<?xml version="1.0" encoding="ascii"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <title>bytecode</title>
  <link rel="stylesheet" href="epydoc.css" type="text/css" />
  <script type="text/javascript" src="epydoc.js"></script>
</head>

<body bgcolor="white" text="black" link="blue" vlink="#204080"
      alink="#204080">
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
       bgcolor="#a0c0ff" cellspacing="0">
  <tr valign="middle">

  <!-- Tree link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Index link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Help link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Project homepage -->
      <th class="navbar" align="right" width="100%">
        <table border="0" cellpadding="0" cellspacing="0">
          <tr><th class="navbar" align="center"
            ><a class="navbar" target="_top" href="http://code.google.com/p/androguard/">Androguard</a></th>
          </tr></table></th>
  </tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0">
  <tr valign="top">
    <td width="100%">
      <span class="breadcrumbs">
        Module&nbsp;bytecode
      </span>
    </td>
    <td>
      <table cellpadding="0" cellspacing="0">
        <!-- hide/show private -->
        <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
    onclick="toggle_private();">hide&nbsp;private</a>]</span></td></tr>
        <tr><td align="right"><span class="options"
            >[<a href="frames.html" target="_top">frames</a
            >]&nbsp;|&nbsp;<a href="bytecode-pysrc.html"
            target="_top">no&nbsp;frames</a>]</span></td></tr>
      </table>
    </td>
  </tr>
</table>
<h1 class="epydoc">Source Code for <a href="bytecode-module.html">Module bytecode</a></h1>
<pre class="py-src">
<a name="L1"></a><tt class="py-lineno">  1</tt>  <tt class="py-line"><tt class="py-comment"># This file is part of Androguard.</tt> </tt>
<a name="L2"></a><tt class="py-lineno">  2</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
<a name="L3"></a><tt class="py-lineno">  3</tt>  <tt class="py-line"><tt class="py-comment"># Copyright (C) 2010, Anthony Desnos &lt;desnos at t0t0.org&gt;</tt> </tt>
<a name="L4"></a><tt class="py-lineno">  4</tt>  <tt class="py-line"><tt class="py-comment"># All rights reserved.</tt> </tt>
<a name="L5"></a><tt class="py-lineno">  5</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
<a name="L6"></a><tt class="py-lineno">  6</tt>  <tt class="py-line"><tt class="py-comment"># Androguard is free software: you can redistribute it and/or modify</tt> </tt>
<a name="L7"></a><tt class="py-lineno">  7</tt>  <tt class="py-line"><tt class="py-comment"># it under the terms of the GNU Lesser General Public License as published by</tt> </tt>
<a name="L8"></a><tt class="py-lineno">  8</tt>  <tt class="py-line"><tt class="py-comment"># the Free Software Foundation, either version 3 of the License, or</tt> </tt>
<a name="L9"></a><tt class="py-lineno">  9</tt>  <tt class="py-line"><tt class="py-comment"># (at your option) any later version.</tt> </tt>
<a name="L10"></a><tt class="py-lineno"> 10</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
<a name="L11"></a><tt class="py-lineno"> 11</tt>  <tt class="py-line"><tt class="py-comment"># Androguard is distributed in the hope that it will be useful,</tt> </tt>
<a name="L12"></a><tt class="py-lineno"> 12</tt>  <tt class="py-line"><tt class="py-comment"># but WITHOUT ANY WARRANTY; without even the implied warranty of</tt> </tt>
<a name="L13"></a><tt class="py-lineno"> 13</tt>  <tt class="py-line"><tt class="py-comment"># MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the</tt> </tt>
<a name="L14"></a><tt class="py-lineno"> 14</tt>  <tt class="py-line"><tt class="py-comment"># GNU Lesser General Public License for more details.</tt> </tt>
<a name="L15"></a><tt class="py-lineno"> 15</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
<a name="L16"></a><tt class="py-lineno"> 16</tt>  <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
<a name="L17"></a><tt class="py-lineno"> 17</tt>  <tt class="py-line"><tt class="py-comment"># along with Androguard.  If not, see &lt;http://www.gnu.org/licenses/&gt;.</tt> </tt>
<a name="L18"></a><tt class="py-lineno"> 18</tt>  <tt class="py-line"> </tt>
<a name="L19"></a><tt class="py-lineno"> 19</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">struct</tt> <tt class="py-keyword">import</tt> <tt class="py-name">unpack</tt><tt class="py-op">,</tt> <tt class="py-name">pack</tt> </tt>
<a name="L20"></a><tt class="py-lineno"> 20</tt>  <tt class="py-line"> </tt>
<a name="L21"></a><tt class="py-lineno"> 21</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Module misc=misc-module.html"><a title="misc" class="py-name" href="#" onclick="return doclink('link-0', 'misc', 'link-0');">misc</a></tt> <tt class="py-keyword">import</tt> <tt id="link-1" class="py-name" targets="Class misc.Color=misc.Color-class.html"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-1', 'Color', 'link-1');">Color</a></tt> </tt>
<a name="L22"></a><tt class="py-lineno"> 22</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name" targets="Module error=error-module.html,Function error.error()=error-module.html#error"><a title="error
error.error" class="py-name" href="#" onclick="return doclink('link-2', 'error', 'link-2');">error</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Function error.warning()=error-module.html#warning"><a title="error.warning" class="py-name" href="#" onclick="return doclink('link-3', 'warning', 'link-3');">warning</a></tt><tt class="py-op">,</tt> <tt id="link-4" class="py-name"><a title="error
error.error" class="py-name" href="#" onclick="return doclink('link-4', 'error', 'link-2');">error</a></tt> </tt>
<a name="L23"></a><tt class="py-lineno"> 23</tt>  <tt class="py-line"> </tt>
<a name="L24"></a><tt class="py-lineno"> 24</tt>  <tt class="py-line"><tt class="py-keyword">global</tt> <tt id="link-5" class="py-name" targets="Variable bytecode.PRETTY_SHOW=bytecode-module.html#PRETTY_SHOW"><a title="bytecode.PRETTY_SHOW" class="py-name" href="#" onclick="return doclink('link-5', 'PRETTY_SHOW', 'link-5');">PRETTY_SHOW</a></tt> </tt>
<a name="L25"></a><tt class="py-lineno"> 25</tt>  <tt class="py-line"><tt id="link-6" class="py-name"><a title="bytecode.PRETTY_SHOW" class="py-name" href="#" onclick="return doclink('link-6', 'PRETTY_SHOW', 'link-5');">PRETTY_SHOW</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
<a name="L26"></a><tt class="py-lineno"> 26</tt>  <tt class="py-line"> </tt>
<a name="L27"></a><tt class="py-lineno"> 27</tt>  <tt class="py-line"><tt class="py-comment"># Handle exit message</tt> </tt>
<a name="Exit"></a><div id="Exit-def"><a name="L28"></a><tt class="py-lineno"> 28</tt> <a class="py-toggle" href="#" id="Exit-toggle" onclick="return toggle('Exit');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#Exit">Exit</a><tt class="py-op">(</tt> <tt class="py-param">msg</tt> <tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
</div><div id="Exit-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="Exit-expanded"><a name="L29"></a><tt class="py-lineno"> 29</tt>  <tt class="py-line">    <tt id="link-7" class="py-name"><a title="error.warning" class="py-name" href="#" onclick="return doclink('link-7', 'warning', 'link-3');">warning</a></tt><tt class="py-op">(</tt><tt class="py-string">"Error : "</tt> <tt class="py-op">+</tt> <tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
<a name="L30"></a><tt class="py-lineno"> 30</tt>  <tt class="py-line">    <tt class="py-keyword">raise</tt><tt class="py-op">(</tt><tt class="py-string">"oops"</tt><tt class="py-op">)</tt> </tt>
</div><a name="L31"></a><tt class="py-lineno"> 31</tt>  <tt class="py-line"> </tt>
<a name="L32"></a><tt class="py-lineno"> 32</tt>  <tt class="py-line"><tt class="py-comment"># Print arg into a correct format</tt> </tt>
<a name="_Print"></a><div id="_Print-def"><a name="L33"></a><tt class="py-lineno"> 33</tt> <a class="py-toggle" href="#" id="_Print-toggle" onclick="return toggle('_Print');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#_Print">_Print</a><tt class="py-op">(</tt><tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">arg</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="_Print-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_Print-expanded"><a name="L34"></a><tt class="py-lineno"> 34</tt>  <tt class="py-line">    <tt class="py-name">buff</tt> <tt class="py-op">=</tt> <tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">" "</tt> </tt>
<a name="L35"></a><tt class="py-lineno"> 35</tt>  <tt class="py-line"> </tt>
<a name="L36"></a><tt class="py-lineno"> 36</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt id="link-8" class="py-name" targets="Variable dvm.MAP_ITEM_NAMEDTUPLE.type=dvm.MAP_ITEM_NAMEDTUPLE-class.html#type"><a title="dvm.MAP_ITEM_NAMEDTUPLE.type" class="py-name" href="#" onclick="return doclink('link-8', 'type', 'link-8');">type</a></tt><tt class="py-op">(</tt><tt class="py-name">arg</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">__name__</tt> <tt class="py-op">==</tt> <tt class="py-string">'int'</tt> <tt class="py-op">:</tt> </tt>
<a name="L37"></a><tt class="py-lineno"> 37</tt>  <tt class="py-line">        <tt class="py-name">buff</tt> <tt class="py-op">+=</tt> <tt class="py-string">"0x%x"</tt> <tt class="py-op">%</tt> <tt class="py-name">arg</tt> </tt>
<a name="L38"></a><tt class="py-lineno"> 38</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt id="link-9" class="py-name"><a title="dvm.MAP_ITEM_NAMEDTUPLE.type" class="py-name" href="#" onclick="return doclink('link-9', 'type', 'link-8');">type</a></tt><tt class="py-op">(</tt><tt class="py-name">arg</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">__name__</tt> <tt class="py-op">==</tt> <tt class="py-string">'long'</tt> <tt class="py-op">:</tt> </tt>
<a name="L39"></a><tt class="py-lineno"> 39</tt>  <tt class="py-line">        <tt class="py-name">buff</tt> <tt class="py-op">+=</tt> <tt class="py-string">"0x%x"</tt> <tt class="py-op">%</tt> <tt class="py-name">arg</tt> </tt>
<a name="L40"></a><tt class="py-lineno"> 40</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt id="link-10" class="py-name"><a title="dvm.MAP_ITEM_NAMEDTUPLE.type" class="py-name" href="#" onclick="return doclink('link-10', 'type', 'link-8');">type</a></tt><tt class="py-op">(</tt><tt class="py-name">arg</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">__name__</tt> <tt class="py-op">==</tt> <tt class="py-string">'str'</tt> <tt class="py-op">:</tt> </tt>
<a name="L41"></a><tt class="py-lineno"> 41</tt>  <tt class="py-line">        <tt class="py-name">buff</tt> <tt class="py-op">+=</tt> <tt class="py-string">"%s"</tt> <tt class="py-op">%</tt> <tt class="py-name">arg</tt> </tt>
<a name="L42"></a><tt class="py-lineno"> 42</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">arg</tt><tt class="py-op">,</tt> <tt id="link-11" class="py-name" targets="Class bytecode.SV=bytecode.SV-class.html"><a title="bytecode.SV" class="py-name" href="#" onclick="return doclink('link-11', 'SV', 'link-11');">SV</a></tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
<a name="L43"></a><tt class="py-lineno"> 43</tt>  <tt class="py-line">        <tt class="py-name">buff</tt> <tt class="py-op">+=</tt> <tt class="py-string">"0x%x"</tt> <tt class="py-op">%</tt> <tt class="py-name">arg</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method analysis.PathI.get_value()=analysis.PathI-class.html#get_value,Method bytecode.SV.get_value()=bytecode.SV-class.html#get_value,Method bytecode.SVs.get_value()=bytecode.SVs-class.html#get_value,Method dvm.HeaderItem.get_value()=dvm.HeaderItem-class.html#get_value,Method dvm.TypeItem.get_value()=dvm.TypeItem-class.html#get_value,Method jvm.ClassManager.get_value()=jvm.ClassManager-class.html#get_value"><a title="analysis.PathI.get_value
bytecode.SV.get_value
bytecode.SVs.get_value
dvm.HeaderItem.get_value
dvm.TypeItem.get_value
jvm.ClassManager.get_value" class="py-name" href="#" onclick="return doclink('link-12', 'get_value', 'link-12');">get_value</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
<a name="L44"></a><tt class="py-lineno"> 44</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">arg</tt><tt class="py-op">,</tt> <tt id="link-13" class="py-name" targets="Class bytecode.SVs=bytecode.SVs-class.html"><a title="bytecode.SVs" class="py-name" href="#" onclick="return doclink('link-13', 'SVs', 'link-13');">SVs</a></tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
<a name="L45"></a><tt class="py-lineno"> 45</tt>  <tt class="py-line">        <tt class="py-name">buff</tt> <tt class="py-op">+=</tt> <tt class="py-name">arg</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="analysis.PathI.get_value
bytecode.SV.get_value
bytecode.SVs.get_value
dvm.HeaderItem.get_value
dvm.TypeItem.get_value
jvm.ClassManager.get_value" class="py-name" href="#" onclick="return doclink('link-14', 'get_value', 'link-12');">get_value</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method bytecode.SV.__str__()=bytecode.SV-class.html#__str__,Method bytecode.SVs.__str__()=bytecode.SVs-class.html#__str__"><a title="bytecode.SV.__str__
bytecode.SVs.__str__" class="py-name" href="#" onclick="return doclink('link-15', '__str__', 'link-15');">__str__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
<a name="L46"></a><tt class="py-lineno"> 46</tt>  <tt class="py-line"> </tt>
<a name="L47"></a><tt class="py-lineno"> 47</tt>  <tt class="py-line">    <tt class="py-keyword">print</tt> <tt class="py-name">buff</tt> </tt>
</div><a name="L48"></a><tt class="py-lineno"> 48</tt>  <tt class="py-line"> </tt>
<a name="set_pretty_show"></a><div id="set_pretty_show-def"><a name="L49"></a><tt class="py-lineno"> 49</tt> <a class="py-toggle" href="#" id="set_pretty_show-toggle" onclick="return toggle('set_pretty_show');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#set_pretty_show">set_pretty_show</a><tt class="py-op">(</tt> <tt class="py-param">val</tt> <tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="set_pretty_show-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="set_pretty_show-expanded"><a name="L50"></a><tt class="py-lineno"> 50</tt>  <tt class="py-line">    <tt class="py-keyword">global</tt> <tt id="link-16" class="py-name"><a title="bytecode.PRETTY_SHOW" class="py-name" href="#" onclick="return doclink('link-16', 'PRETTY_SHOW', 'link-5');">PRETTY_SHOW</a></tt> </tt>
<a name="L51"></a><tt class="py-lineno"> 51</tt>  <tt class="py-line">    <tt id="link-17" class="py-name"><a title="bytecode.PRETTY_SHOW" class="py-name" href="#" onclick="return doclink('link-17', 'PRETTY_SHOW', 'link-5');">PRETTY_SHOW</a></tt> <tt class="py-op">=</tt> <tt class="py-name">val</tt> </tt>
</div><a name="L52"></a><tt class="py-lineno"> 52</tt>  <tt class="py-line"> </tt>
<a name="PrettyShow"></a><div id="PrettyShow-def"><a name="L53"></a><tt class="py-lineno"> 53</tt> <a class="py-toggle" href="#" id="PrettyShow-toggle" onclick="return toggle('PrettyShow');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#PrettyShow">PrettyShow</a><tt class="py-op">(</tt> <tt class="py-param">basic_blocks</tt> <tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="PrettyShow-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="PrettyShow-expanded"><a name="L54"></a><tt class="py-lineno"> 54</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt id="link-18" class="py-name"><a title="bytecode.PRETTY_SHOW" class="py-name" href="#" onclick="return doclink('link-18', 'PRETTY_SHOW', 'link-5');">PRETTY_SHOW</a></tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt> <tt class="py-op">:</tt> </tt>
<a name="L55"></a><tt class="py-lineno"> 55</tt>  <tt class="py-line">        <tt id="link-19" class="py-name" targets="Function bytecode.PrettyShow0()=bytecode-module.html#PrettyShow0"><a title="bytecode.PrettyShow0" class="py-name" href="#" onclick="return doclink('link-19', 'PrettyShow0', 'link-19');">PrettyShow0</a></tt><tt class="py-op">(</tt> <tt class="py-name">basic_blocks</tt> <tt class="py-op">)</tt> </tt>
<a name="L56"></a><tt class="py-lineno"> 56</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt id="link-20" class="py-name"><a title="bytecode.PRETTY_SHOW" class="py-name" href="#" onclick="return doclink('link-20', 'PRETTY_SHOW', 'link-5');">PRETTY_SHOW</a></tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
<a name="L57"></a><tt class="py-lineno"> 57</tt>  <tt class="py-line">        <tt id="link-21" class="py-name" targets="Function bytecode.PrettyShow1()=bytecode-module.html#PrettyShow1"><a title="bytecode.PrettyShow1" class="py-name" href="#" onclick="return doclink('link-21', 'PrettyShow1', 'link-21');">PrettyShow1</a></tt><tt class="py-op">(</tt> <tt class="py-name">basic_blocks</tt> <tt class="py-op">)</tt> </tt>
<a name="L58"></a><tt class="py-lineno"> 58</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt id="link-22" class="py-name"><a title="bytecode.PRETTY_SHOW" class="py-name" href="#" onclick="return doclink('link-22', 'PRETTY_SHOW', 'link-5');">PRETTY_SHOW</a></tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt> <tt class="py-op">:</tt> </tt>
<a name="L59"></a><tt class="py-lineno"> 59</tt>  <tt class="py-line">        <tt id="link-23" class="py-name" targets="Function bytecode.PrettyShow1bis()=bytecode-module.html#PrettyShow1bis"><a title="bytecode.PrettyShow1bis" class="py-name" href="#" onclick="return doclink('link-23', 'PrettyShow1bis', 'link-23');">PrettyShow1bis</a></tt><tt class="py-op">(</tt> <tt class="py-name">basic_blocks</tt> <tt class="py-op">)</tt> </tt>
</div><a name="L60"></a><tt class="py-lineno"> 60</tt>  <tt class="py-line"> </tt>
<a name="PrettyShow0"></a><div id="PrettyShow0-def"><a name="L61"></a><tt class="py-lineno"> 61</tt> <a class="py-toggle" href="#" id="PrettyShow0-toggle" onclick="return toggle('PrettyShow0');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#PrettyShow0">PrettyShow0</a><tt class="py-op">(</tt> <tt class="py-param">basic_blocks</tt> <tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="PrettyShow0-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="PrettyShow0-expanded"><a name="L62"></a><tt class="py-lineno"> 62</tt>  <tt class="py-line">    <tt class="py-name">paths</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
<a name="L63"></a><tt class="py-lineno"> 63</tt>  <tt class="py-line">    <tt class="py-keyword">for</tt> <tt id="link-24" class="py-name" targets="Variable analysis.i=analysis-module.html#i,Variable jvm.i=jvm-module.html#i"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-24', 'i', 'link-24');">i</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">basic_blocks</tt> <tt class="py-op">:</tt> </tt>
<a name="L64"></a><tt class="py-lineno"> 64</tt>  <tt class="py-line">        <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
<a name="L65"></a><tt class="py-lineno"> 65</tt>  <tt class="py-line">        <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-25" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-25', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
<a name="L66"></a><tt class="py-lineno"> 66</tt>  <tt class="py-line">            <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
<a name="L67"></a><tt class="py-lineno"> 67</tt>  <tt class="py-line">        <tt class="py-keyword">elif</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-26" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-26', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
<a name="L68"></a><tt class="py-lineno"> 68</tt>  <tt class="py-line">            <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> </tt>
<a name="L69"></a><tt class="py-lineno"> 69</tt>  <tt class="py-line"> </tt>
<a name="L70"></a><tt class="py-lineno"> 70</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt id="link-27" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-27', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt> <tt class="py-op">:</tt> </tt>
<a name="L71"></a><tt class="py-lineno"> 71</tt>  <tt class="py-line">            <tt class="py-name">paths</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-op">(</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">val</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
<a name="L72"></a><tt class="py-lineno"> 72</tt>  <tt class="py-line">            <tt class="py-keyword">if</tt> <tt class="py-name">val</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
<a name="L73"></a><tt class="py-lineno"> 73</tt>  <tt class="py-line">                <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
<a name="L74"></a><tt class="py-lineno"> 74</tt>  <tt class="py-line"> </tt>
<a name="L75"></a><tt class="py-lineno"> 75</tt>  <tt class="py-line">    <tt class="py-name">nb</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
<a name="L76"></a><tt class="py-lineno"> 76</tt>  <tt class="py-line">    <tt class="py-name">idx</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
<a name="L77"></a><tt class="py-lineno"> 77</tt>  <tt class="py-line">    <tt class="py-keyword">for</tt> <tt class="py-name">bb</tt> <tt class="py-keyword">in</tt> <tt class="py-name">basic_blocks</tt> <tt class="py-op">:</tt> </tt>
<a name="L78"></a><tt class="py-lineno"> 78</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt class="py-name">ins</tt> <tt class="py-keyword">in</tt> <tt class="py-name">bb</tt><tt class="py-op">.</tt><tt class="py-name">ins</tt> <tt class="py-op">:</tt> </tt>
<a name="L79"></a><tt class="py-lineno"> 79</tt>  <tt class="py-line">            <tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
<a name="L80"></a><tt class="py-lineno"> 80</tt>  <tt class="py-line">            <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">paths</tt> <tt class="py-op">:</tt> </tt>
<a name="L81"></a><tt class="py-lineno"> 81</tt>  <tt class="py-line">                <tt class="py-name">way</tt> <tt class="py-op">=</tt> <tt id="link-28" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-28', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Variable misc.Color.green=misc.Color-class.html#green"><a title="misc.Color.green" class="py-name" href="#" onclick="return doclink('link-29', 'green', 'link-29');">green</a></tt> </tt>
<a name="L82"></a><tt class="py-lineno"> 82</tt>  <tt class="py-line">                <tt class="py-keyword">if</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
<a name="L83"></a><tt class="py-lineno"> 83</tt>  <tt class="py-line">                    <tt class="py-name">way</tt> <tt class="py-op">=</tt> <tt id="link-30" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-30', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Variable misc.Color.red=misc.Color-class.html#red"><a title="misc.Color.red" class="py-name" href="#" onclick="return doclink('link-31', 'red', 'link-31');">red</a></tt> </tt>
<a name="L84"></a><tt class="py-lineno"> 84</tt>  <tt class="py-line">                <tt class="py-keyword">elif</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt> <tt class="py-op">:</tt> </tt>
<a name="L85"></a><tt class="py-lineno"> 85</tt>  <tt class="py-line">                    <tt class="py-name">way</tt> <tt class="py-op">=</tt> <tt id="link-32" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-32', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Variable misc.Color.blue=misc.Color-class.html#blue"><a title="misc.Color.blue" class="py-name" href="#" onclick="return doclink('link-33', 'blue', 'link-33');">blue</a></tt> </tt>
<a name="L86"></a><tt class="py-lineno"> 86</tt>  <tt class="py-line"> </tt>
<a name="L87"></a><tt class="py-lineno"> 87</tt>  <tt class="py-line">                <tt class="py-name">m_in</tt> <tt class="py-op">=</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
<a name="L88"></a><tt class="py-lineno"> 88</tt>  <tt class="py-line">                <tt class="py-name">m_ax</tt> <tt class="py-op">=</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
<a name="L89"></a><tt class="py-lineno"> 89</tt>  <tt class="py-line">                <tt class="py-keyword">if</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">&gt;</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt>
<a name="L90"></a><tt class="py-lineno"> 90</tt>  <tt class="py-line">                    <tt class="py-name">m_in</tt> <tt class="py-op">=</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
<a name="L91"></a><tt class="py-lineno"> 91</tt>  <tt class="py-line">                    <tt class="py-name">m_ax</tt> <tt class="py-op">=</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
<a name="L92"></a><tt class="py-lineno"> 92</tt>  <tt class="py-line"> </tt>
<a name="L93"></a><tt class="py-lineno"> 93</tt>  <tt class="py-line">                <tt class="py-keyword">if</tt> <tt class="py-name">idx</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">m_in</tt> <tt class="py-keyword">and</tt> <tt class="py-name">idx</tt> <tt class="py-op">&lt;=</tt> <tt class="py-name">m_ax</tt> <tt class="py-op">:</tt> </tt>
<a name="L94"></a><tt class="py-lineno"> 94</tt>  <tt class="py-line">                    <tt class="py-keyword">if</tt> <tt class="py-name">idx</tt> <tt class="py-op">==</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt>
<a name="L95"></a><tt class="py-lineno"> 95</tt>  <tt class="py-line">                        <tt class="py-name">p</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">)</tt> </tt>
<a name="L96"></a><tt class="py-lineno"> 96</tt>  <tt class="py-line">                        <tt class="py-keyword">print</tt> <tt class="py-string">"o"</tt><tt class="py-op">,</tt> </tt>
<a name="L97"></a><tt class="py-lineno"> 97</tt>  <tt class="py-line">                    <tt class="py-keyword">if</tt> <tt class="py-name">idx</tt> <tt class="py-op">==</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt>
<a name="L98"></a><tt class="py-lineno"> 98</tt>  <tt class="py-line">                        <tt class="py-keyword">print</tt> <tt class="py-string">"%s&gt;%s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">way</tt><tt class="py-op">,</tt> <tt id="link-34" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-34', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Variable misc.Color.normal=misc.Color-class.html#normal"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-35', 'normal', 'link-35');">normal</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
<a name="L99"></a><tt class="py-lineno"> 99</tt>  <tt class="py-line"> </tt>
<a name="L100"></a><tt class="py-lineno">100</tt>  <tt class="py-line">                    <tt class="py-keyword">if</tt> <tt class="py-name">idx</tt> <tt class="py-op">!=</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt class="py-name">idx</tt> <tt class="py-op">!=</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt>
<a name="L101"></a><tt class="py-lineno">101</tt>  <tt class="py-line">                        <tt class="py-keyword">print</tt> <tt class="py-string">"%s|%s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">way</tt><tt class="py-op">,</tt> <tt id="link-36" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-36', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-37', 'normal', 'link-35');">normal</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
<a name="L102"></a><tt class="py-lineno">102</tt>  <tt class="py-line">                <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
<a name="L103"></a><tt class="py-lineno">103</tt>  <tt class="py-line">                    <tt class="py-keyword">print</tt> <tt class="py-string">" "</tt><tt class="py-op">,</tt> </tt>
<a name="L104"></a><tt class="py-lineno">104</tt>  <tt class="py-line"> </tt>
<a name="L105"></a><tt class="py-lineno">105</tt>  <tt class="py-line">            <tt class="py-keyword">print</tt> <tt class="py-string">"%s%d%s(%s%x%s)"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt id="link-38" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-38', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-39" class="py-name" targets="Variable misc.Color.yellow=misc.Color-class.html#yellow"><a title="misc.Color.yellow" class="py-name" href="#" onclick="return doclink('link-39', 'yellow', 'link-39');">yellow</a></tt><tt class="py-op">,</tt> <tt class="py-name">nb</tt><tt class="py-op">,</tt> <tt id="link-40" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-40', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-41', 'normal', 'link-35');">normal</a></tt><tt class="py-op">,</tt> <tt id="link-42" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-42', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="misc.Color.yellow" class="py-name" href="#" onclick="return doclink('link-43', 'yellow', 'link-39');">yellow</a></tt><tt class="py-op">,</tt> <tt class="py-name">idx</tt><tt class="py-op">,</tt> <tt id="link-44" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-44', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-45', 'normal', 'link-35');">normal</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
<a name="L106"></a><tt class="py-lineno">106</tt>  <tt class="py-line">            <tt class="py-name">ins</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name" targets="Method analysis.BreakBlock.show()=analysis.BreakBlock-class.html#show,Method analysis.JVMBasicBlock.show()=analysis.JVMBasicBlock-class.html#show,Method analysis.MethodAnalysis.show()=analysis.MethodAnalysis-class.html#show,Method analysis.Stack.show()=analysis.Stack-class.html#show,Method analysis.StackTraces.show()=analysis.StackTraces-class.html#show,Method analysis.TaintedPackage.show()=analysis.TaintedPackage-class.html#show,Method androguard.Androguard.show()=androguard.Androguard-class.html#show,Method androguard.BC.show()=androguard.BC-class.html#show,Method apk.APK.show()=apk.APK-class.html#show,Method bytecode.MethodBC.show()=bytecode.MethodBC-class.html#show,Method diff.DiffBB.show()=diff.DiffBB-class.html#show,Method diff.Method.show()=diff.Method-class.html#show,Method dvm.AnnotationElement.show()=dvm.AnnotationElement-class.html#show,Method dvm.AnnotationItem.show()=dvm.AnnotationItem-class.html#show,Method dvm.AnnotationOffItem.show()=dvm.AnnotationOffItem-class.html#show,Method dvm.AnnotationSetItem.show()=dvm.AnnotationSetItem-class.html#show,Method dvm.AnnotationSetRefItem.show()=dvm.AnnotationSetRefItem-class.html#show,Method dvm.AnnotationSetRefList.show()=dvm.AnnotationSetRefList-class.html#show,Method dvm.AnnotationsDirectoryItem.show()=dvm.AnnotationsDirectoryItem-class.html#show,Method dvm.ClassDataItem.show()=dvm.ClassDataItem-class.html#show,Method dvm.ClassDefItem.show()=dvm.ClassDefItem-class.html#show,Method dvm.ClassItem.show()=dvm.ClassItem-class.html#show,Method dvm.CodeItem.show()=dvm.CodeItem-class.html#show,Method dvm.DBC.show()=dvm.DBC-class.html#show,Method dvm.DBCSpe.show()=dvm.DBCSpe-class.html#show,Method dvm.DBGBytecode.show()=dvm.DBGBytecode-class.html#show,Method dvm.DCode.show()=dvm.DCode-class.html#show,Method dvm.DalvikCode.show()=dvm.DalvikCode-class.html#show,Method dvm.DalvikVMFormat.show()=dvm.DalvikVMFormat-class.html#show,Method dvm.DebugInfoItem.show()=dvm.DebugInfoItem-class.html#show,Method dvm.DebugInfoItem2.show()=dvm.DebugInfoItem2-class.html#show,Method dvm.EncodedAnnotation.show()=dvm.EncodedAnnotation-class.html#show,Method dvm.EncodedArray.show()=dvm.EncodedArray-class.html#show,Method dvm.EncodedArrayItem.show()=dvm.EncodedArrayItem-class.html#show,Method dvm.EncodedCatchHandler.show()=dvm.EncodedCatchHandler-class.html#show,Method dvm.EncodedCatchHandlerList.show()=dvm.EncodedCatchHandlerList-class.html#show,Method dvm.EncodedField.show()=dvm.EncodedField-class.html#show,Method dvm.EncodedMethod.show()=dvm.EncodedMethod-class.html#show,Method dvm.EncodedTypeAddrPair.show()=dvm.EncodedTypeAddrPair-class.html#show,Method dvm.EncodedValue.show()=dvm.EncodedValue-class.html#show,Method dvm.FieldAnnotation.show()=dvm.FieldAnnotation-class.html#show,Method dvm.FieldItem.show()=dvm.FieldItem-class.html#show,Method dvm.FillArrayData.show()=dvm.FillArrayData-class.html#show,Method dvm.HeaderItem.show()=dvm.HeaderItem-class.html#show,Method dvm.IdItem.show()=dvm.IdItem-class.html#show,Method dvm.MapItem.show()=dvm.MapItem-class.html#show,Method dvm.MapList.show()=dvm.MapList-class.html#show,Method dvm.MethodAnnotation.show()=dvm.MethodAnnotation-class.html#show,Method dvm.MethodIdItem.show()=dvm.MethodIdItem-class.html#show,Method dvm.MethodItem.show()=dvm.MethodItem-class.html#show,Method dvm.PackedSwitch.show()=dvm.PackedSwitch-class.html#show,Method dvm.ParameterAnnotation.show()=dvm.ParameterAnnotation-class.html#show,Method dvm.ProtoIdItem.show()=dvm.ProtoIdItem-class.html#show,Method dvm.ProtoItem.show()=dvm.ProtoItem-class.html#show,Method dvm.SparseSwitch.show()=dvm.SparseSwitch-class.html#show,Method dvm.StringDataItem.show()=dvm.StringDataItem-class.html#show,Method dvm.StringIdItem.show()=dvm.StringIdItem-class.html#show,Method dvm.TypeIdItem.show()=dvm.TypeIdItem-class.html#show,Method dvm.TypeItem.show()=dvm.TypeItem-class.html#show,Method dvm.TypeLItem.show()=dvm.TypeLItem-class.html#show,Method dvm.TypeList.show()=dvm.TypeList-class.html#show,Method jvm.Annotation.show()=jvm.Annotation-class.html#show,Method jvm.AnnotationDefaultAttribute.show()=jvm.AnnotationDefaultAttribute-class.html#show,Method jvm.AppendFrame.show()=jvm.AppendFrame-class.html#show,Method jvm.ArrayValue.show()=jvm.ArrayValue-class.html#show,Method jvm.AttributeInfo.show()=jvm.AttributeInfo-class.html#show,Method jvm.ChopFrame.show()=jvm.ChopFrame-class.html#show,Method jvm.CodeAttribute.show()=jvm.CodeAttribute-class.html#show,Method jvm.ConstantValueAttribute.show()=jvm.ConstantValueAttribute-class.html#show,Method jvm.CpInfo.show()=jvm.CpInfo-class.html#show,Method jvm.DeprecatedAttribute.show()=jvm.DeprecatedAttribute-class.html#show,Method jvm.ElementValue.show()=jvm.ElementValue-class.html#show,Method jvm.ElementValuePair.show()=jvm.ElementValuePair-class.html#show,Method jvm.EmptyConstant.show()=jvm.EmptyConstant-class.html#show,Method jvm.EnclosingMethodAttribute.show()=jvm.EnclosingMethodAttribute-class.html#show,Method jvm.ExceptionsAttribute.show()=jvm.ExceptionsAttribute-class.html#show,Method jvm.FieldInfo.show()=jvm.FieldInfo-class.html#show,Method jvm.FullFrame.show()=jvm.FullFrame-class.html#show,Method jvm.InnerClassesAttribute.show()=jvm.InnerClassesAttribute-class.html#show,Method jvm.InnerClassesDesc.show()=jvm.InnerClassesDesc-class.html#show,Method jvm.JAR.show()=jvm.JAR-class.html#show,Method jvm.JBC.show()=jvm.JBC-class.html#show,Method jvm.JVMFormat.show()=jvm.JVMFormat-class.html#show,Method jvm.JavaCode.show()=jvm.JavaCode-class.html#show,Method jvm.LineNumberTableAttribute.show()=jvm.LineNumberTableAttribute-class.html#show,Method jvm.LocalVariableTableAttribute.show()=jvm.LocalVariableTableAttribute-class.html#show,Method jvm.LocalVariableTypeTableAttribute.show()=jvm.LocalVariableTypeTableAttribute-class.html#show,Method jvm.MethodInfo.show()=jvm.MethodInfo-class.html#show,Method jvm.ParameterAnnotation.show()=jvm.ParameterAnnotation-class.html#show,Method jvm.RuntimeInvisibleAnnotationsAttribute.show()=jvm.RuntimeInvisibleAnnotationsAttribute-class.html#show,Method jvm.RuntimeInvisibleParameterAnnotationsAttribute.show()=jvm.RuntimeInvisibleParameterAnnotationsAttribute-class.html#show,Method jvm.RuntimeVisibleAnnotationsAttribute.show()=jvm.RuntimeVisibleAnnotationsAttribute-class.html#show,Method jvm.RuntimeVisibleParameterAnnotationsAttribute.show()=jvm.RuntimeVisibleParameterAnnotationsAttribute-class.html#show,Method jvm.SameFrame.show()=jvm.SameFrame-class.html#show,Method jvm.SameFrameExtended.show()=jvm.SameFrameExtended-class.html#show,Method jvm.SameLocals1StackItemFrame.show()=jvm.SameLocals1StackItemFrame-class.html#show,Method jvm.SameLocals1StackItemFrameExtended.show()=jvm.SameLocals1StackItemFrameExtended-class.html#show,Method jvm.SignatureAttribute.show()=jvm.SignatureAttribute-class.html#show,Method jvm.SourceDebugExtensionAttribute.show()=jvm.SourceDebugExtensionAttribute-class.html#show,Method jvm.SourceFileAttribute.show()=jvm.SourceFileAttribute-class.html#show,Method jvm.StackMapTableAttribute.show()=jvm.StackMapTableAttribute-class.html#show,Method jvm.SyntheticAttribute.show()=jvm.SyntheticAttribute-class.html#show,Method jvm.VerificationTypeInfo.show()=jvm.VerificationTypeInfo-class.html#show"><a title="analysis.BreakBlock.show
analysis.JVMBasicBlock.show
analysis.MethodAnalysis.show
analysis.Stack.show
analysis.StackTraces.show
analysis.TaintedPackage.show
androguard.Androguard.show
androguard.BC.show
apk.APK.show
bytecode.MethodBC.show
diff.DiffBB.show
diff.Method.show
dvm.AnnotationElement.show
dvm.AnnotationItem.show
dvm.AnnotationOffItem.show
dvm.AnnotationSetItem.show
dvm.AnnotationSetRefItem.show
dvm.AnnotationSetRefList.show
dvm.AnnotationsDirectoryItem.show
dvm.ClassDataItem.show
dvm.ClassDefItem.show
dvm.ClassItem.show
dvm.CodeItem.show
dvm.DBC.show
dvm.DBCSpe.show
dvm.DBGBytecode.show
dvm.DCode.show
dvm.DalvikCode.show
dvm.DalvikVMFormat.show
dvm.DebugInfoItem.show
dvm.DebugInfoItem2.show
dvm.EncodedAnnotation.show
dvm.EncodedArray.show
dvm.EncodedArrayItem.show
dvm.EncodedCatchHandler.show
dvm.EncodedCatchHandlerList.show
dvm.EncodedField.show
dvm.EncodedMethod.show
dvm.EncodedTypeAddrPair.show
dvm.EncodedValue.show
dvm.FieldAnnotation.show
dvm.FieldItem.show
dvm.FillArrayData.show
dvm.HeaderItem.show
dvm.IdItem.show
dvm.MapItem.show
dvm.MapList.show
dvm.MethodAnnotation.show
dvm.MethodIdItem.show
dvm.MethodItem.show
dvm.PackedSwitch.show
dvm.ParameterAnnotation.show
dvm.ProtoIdItem.show
dvm.ProtoItem.show
dvm.SparseSwitch.show
dvm.StringDataItem.show
dvm.StringIdItem.show
dvm.TypeIdItem.show
dvm.TypeItem.show
dvm.TypeLItem.show
dvm.TypeList.show
jvm.Annotation.show
jvm.AnnotationDefaultAttribute.show
jvm.AppendFrame.show
jvm.ArrayValue.show
jvm.AttributeInfo.show
jvm.ChopFrame.show
jvm.CodeAttribute.show
jvm.ConstantValueAttribute.show
jvm.CpInfo.show
jvm.DeprecatedAttribute.show
jvm.ElementValue.show
jvm.ElementValuePair.show
jvm.EmptyConstant.show
jvm.EnclosingMethodAttribute.show
jvm.ExceptionsAttribute.show
jvm.FieldInfo.show
jvm.FullFrame.show
jvm.InnerClassesAttribute.show
jvm.InnerClassesDesc.show
jvm.JAR.show
jvm.JBC.show
jvm.JVMFormat.show
jvm.JavaCode.show
jvm.LineNumberTableAttribute.show
jvm.LocalVariableTableAttribute.show
jvm.LocalVariableTypeTableAttribute.show
jvm.MethodInfo.show
jvm.ParameterAnnotation.show
jvm.RuntimeInvisibleAnnotationsAttribute.show
jvm.RuntimeInvisibleParameterAnnotationsAttribute.show
jvm.RuntimeVisibleAnnotationsAttribute.show
jvm.RuntimeVisibleParameterAnnotationsAttribute.show
jvm.SameFrame.show
jvm.SameFrameExtended.show
jvm.SameLocals1StackItemFrame.show
jvm.SameLocals1StackItemFrameExtended.show
jvm.SignatureAttribute.show
jvm.SourceDebugExtensionAttribute.show
jvm.SourceFileAttribute.show
jvm.StackMapTableAttribute.show
jvm.SyntheticAttribute.show
jvm.VerificationTypeInfo.show" class="py-name" href="#" onclick="return doclink('link-46', 'show', 'link-46');">show</a></tt><tt class="py-op">(</tt> <tt class="py-name">idx</tt> <tt class="py-op">)</tt> </tt>
<a name="L107"></a><tt class="py-lineno">107</tt>  <tt class="py-line"> </tt>
<a name="L108"></a><tt class="py-lineno">108</tt>  <tt class="py-line">            <tt class="py-keyword">if</tt> <tt class="py-name">p</tt> <tt class="py-op">!=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt>
<a name="L109"></a><tt class="py-lineno">109</tt>  <tt class="py-line">                <tt class="py-keyword">print</tt> <tt class="py-string">"%s["</tt> <tt class="py-op">%</tt> <tt id="link-47" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-47', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="misc.Color.green" class="py-name" href="#" onclick="return doclink('link-48', 'green', 'link-29');">green</a></tt><tt class="py-op">,</tt> <tt class="py-string">' '</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-string">"%x"</tt> <tt class="py-op">%</tt> <tt id="link-49" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-49', 'i', 'link-24');">i</a></tt> <tt class="py-keyword">for</tt> <tt id="link-50" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-50', 'i', 'link-24');">i</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">p</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-string">"]%s"</tt> <tt class="py-op">%</tt> <tt id="link-51" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-51', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-52', 'normal', 'link-35');">normal</a></tt><tt class="py-op">,</tt> </tt>
<a name="L110"></a><tt class="py-lineno">110</tt>  <tt class="py-line">            <tt class="py-keyword">print</tt> </tt>
<a name="L111"></a><tt class="py-lineno">111</tt>  <tt class="py-line"> </tt>
<a name="L112"></a><tt class="py-lineno">112</tt>  <tt class="py-line">            <tt class="py-name">idx</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt> <tt class="py-name">ins</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name" targets="Method analysis.MethodAnalysis.get_length()=analysis.MethodAnalysis-class.html#get_length,Method dvm.DBC.get_length()=dvm.DBC-class.html#get_length,Method dvm.DBCSpe.get_length()=dvm.DBCSpe-class.html#get_length,Method dvm.DalvikCode.get_length()=dvm.DalvikCode-class.html#get_length,Method dvm.EncodedMethod.get_length()=dvm.EncodedMethod-class.html#get_length,Method dvm.FillArrayData.get_length()=dvm.FillArrayData-class.html#get_length,Method dvm.MapItem.get_length()=dvm.MapItem-class.html#get_length,Method dvm.PackedSwitch.get_length()=dvm.PackedSwitch-class.html#get_length,Method dvm.SparseSwitch.get_length()=dvm.SparseSwitch-class.html#get_length,Method jvm.CodeAttribute.get_length()=jvm.CodeAttribute-class.html#get_length,Method jvm.CpInfo.get_length()=jvm.CpInfo-class.html#get_length,Method jvm.EmptyConstant.get_length()=jvm.EmptyConstant-class.html#get_length,Method jvm.FieldInfo.get_length()=jvm.FieldInfo-class.html#get_length,Method jvm.JBC.get_length()=jvm.JBC-class.html#get_length,Method jvm.MethodInfo.get_length()=jvm.MethodInfo-class.html#get_length"><a title="analysis.MethodAnalysis.get_length
dvm.DBC.get_length
dvm.DBCSpe.get_length
dvm.DalvikCode.get_length
dvm.EncodedMethod.get_length
dvm.FillArrayData.get_length
dvm.MapItem.get_length
dvm.PackedSwitch.get_length
dvm.SparseSwitch.get_length
jvm.CodeAttribute.get_length
jvm.CpInfo.get_length
jvm.EmptyConstant.get_length
jvm.FieldInfo.get_length
jvm.JBC.get_length
jvm.MethodInfo.get_length" class="py-name" href="#" onclick="return doclink('link-53', 'get_length', 'link-53');">get_length</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
<a name="L113"></a><tt class="py-lineno">113</tt>  <tt class="py-line">            <tt class="py-name">nb</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
</div><a name="L114"></a><tt class="py-lineno">114</tt>  <tt class="py-line"> </tt>
<a name="L115"></a><tt class="py-lineno">115</tt>  <tt class="py-line"> </tt>
<a name="PrettyShow1"></a><div id="PrettyShow1-def"><a name="L116"></a><tt class="py-lineno">116</tt> <a class="py-toggle" href="#" id="PrettyShow1-toggle" onclick="return toggle('PrettyShow1');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#PrettyShow1">PrettyShow1</a><tt class="py-op">(</tt> <tt class="py-param">basic_blocks</tt> <tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="PrettyShow1-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="PrettyShow1-expanded"><a name="L117"></a><tt class="py-lineno">117</tt>  <tt class="py-line">    <tt class="py-name">idx</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
<a name="L118"></a><tt class="py-lineno">118</tt>  <tt class="py-line">    <tt class="py-name">nb</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
<a name="L119"></a><tt class="py-lineno">119</tt>  <tt class="py-line">    <tt class="py-keyword">for</tt> <tt id="link-54" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-54', 'i', 'link-24');">i</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">basic_blocks</tt> <tt class="py-op">:</tt> </tt>
<a name="L120"></a><tt class="py-lineno">120</tt>  <tt class="py-line"> </tt>
<a name="L121"></a><tt class="py-lineno">121</tt>  <tt class="py-line">        <tt class="py-keyword">print</tt> <tt class="py-string">"%s%s%s : "</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt id="link-55" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-55', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-56" class="py-name" targets="Variable misc.Color.purple=misc.Color-class.html#purple"><a title="misc.Color.purple" class="py-name" href="#" onclick="return doclink('link-56', 'purple', 'link-56');">purple</a></tt><tt class="py-op">,</tt> <tt id="link-57" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-57', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt><tt class="py-op">,</tt> <tt id="link-58" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-58', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-59', 'normal', 'link-35');">normal</a></tt><tt class="py-op">)</tt> </tt>
<a name="L122"></a><tt class="py-lineno">122</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt class="py-name">ins</tt> <tt class="py-keyword">in</tt> <tt id="link-60" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-60', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">ins</tt> <tt class="py-op">:</tt> </tt>
<a name="L123"></a><tt class="py-lineno">123</tt>  <tt class="py-line">            <tt class="py-keyword">print</tt> <tt class="py-string">"\t%s%d%s(%s%x%s)"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt id="link-61" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-61', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="misc.Color.yellow" class="py-name" href="#" onclick="return doclink('link-62', 'yellow', 'link-39');">yellow</a></tt><tt class="py-op">,</tt> <tt class="py-name">nb</tt><tt class="py-op">,</tt> <tt id="link-63" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-63', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-64', 'normal', 'link-35');">normal</a></tt><tt class="py-op">,</tt> <tt id="link-65" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-65', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="misc.Color.yellow" class="py-name" href="#" onclick="return doclink('link-66', 'yellow', 'link-39');">yellow</a></tt><tt class="py-op">,</tt> <tt class="py-name">idx</tt><tt class="py-op">,</tt> <tt id="link-67" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-67', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-68', 'normal', 'link-35');">normal</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
<a name="L124"></a><tt class="py-lineno">124</tt>  <tt class="py-line">            <tt class="py-name">ins</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="analysis.BreakBlock.show
analysis.JVMBasicBlock.show
analysis.MethodAnalysis.show
analysis.Stack.show
analysis.StackTraces.show
analysis.TaintedPackage.show
androguard.Androguard.show
androguard.BC.show
apk.APK.show
bytecode.MethodBC.show
diff.DiffBB.show
diff.Method.show
dvm.AnnotationElement.show
dvm.AnnotationItem.show
dvm.AnnotationOffItem.show
dvm.AnnotationSetItem.show
dvm.AnnotationSetRefItem.show
dvm.AnnotationSetRefList.show
dvm.AnnotationsDirectoryItem.show
dvm.ClassDataItem.show
dvm.ClassDefItem.show
dvm.ClassItem.show
dvm.CodeItem.show
dvm.DBC.show
dvm.DBCSpe.show
dvm.DBGBytecode.show
dvm.DCode.show
dvm.DalvikCode.show
dvm.DalvikVMFormat.show
dvm.DebugInfoItem.show
dvm.DebugInfoItem2.show
dvm.EncodedAnnotation.show
dvm.EncodedArray.show
dvm.EncodedArrayItem.show
dvm.EncodedCatchHandler.show
dvm.EncodedCatchHandlerList.show
dvm.EncodedField.show
dvm.EncodedMethod.show
dvm.EncodedTypeAddrPair.show
dvm.EncodedValue.show
dvm.FieldAnnotation.show
dvm.FieldItem.show
dvm.FillArrayData.show
dvm.HeaderItem.show
dvm.IdItem.show
dvm.MapItem.show
dvm.MapList.show
dvm.MethodAnnotation.show
dvm.MethodIdItem.show
dvm.MethodItem.show
dvm.PackedSwitch.show
dvm.ParameterAnnotation.show
dvm.ProtoIdItem.show
dvm.ProtoItem.show
dvm.SparseSwitch.show
dvm.StringDataItem.show
dvm.StringIdItem.show
dvm.TypeIdItem.show
dvm.TypeItem.show
dvm.TypeLItem.show
dvm.TypeList.show
jvm.Annotation.show
jvm.AnnotationDefaultAttribute.show
jvm.AppendFrame.show
jvm.ArrayValue.show
jvm.AttributeInfo.show
jvm.ChopFrame.show
jvm.CodeAttribute.show
jvm.ConstantValueAttribute.show
jvm.CpInfo.show
jvm.DeprecatedAttribute.show
jvm.ElementValue.show
jvm.ElementValuePair.show
jvm.EmptyConstant.show
jvm.EnclosingMethodAttribute.show
jvm.ExceptionsAttribute.show
jvm.FieldInfo.show
jvm.FullFrame.show
jvm.InnerClassesAttribute.show
jvm.InnerClassesDesc.show
jvm.JAR.show
jvm.JBC.show
jvm.JVMFormat.show
jvm.JavaCode.show
jvm.LineNumberTableAttribute.show
jvm.LocalVariableTableAttribute.show
jvm.LocalVariableTypeTableAttribute.show
jvm.MethodInfo.show
jvm.ParameterAnnotation.show
jvm.RuntimeInvisibleAnnotationsAttribute.show
jvm.RuntimeInvisibleParameterAnnotationsAttribute.show
jvm.RuntimeVisibleAnnotationsAttribute.show
jvm.RuntimeVisibleParameterAnnotationsAttribute.show
jvm.SameFrame.show
jvm.SameFrameExtended.show
jvm.SameLocals1StackItemFrame.show
jvm.SameLocals1StackItemFrameExtended.show
jvm.SignatureAttribute.show
jvm.SourceDebugExtensionAttribute.show
jvm.SourceFileAttribute.show
jvm.StackMapTableAttribute.show
jvm.SyntheticAttribute.show
jvm.VerificationTypeInfo.show" class="py-name" href="#" onclick="return doclink('link-69', 'show', 'link-46');">show</a></tt><tt class="py-op">(</tt> <tt class="py-name">idx</tt> <tt class="py-op">)</tt> </tt>
<a name="L125"></a><tt class="py-lineno">125</tt>  <tt class="py-line"> </tt>
<a name="L126"></a><tt class="py-lineno">126</tt>  <tt class="py-line">            <tt class="py-keyword">if</tt> <tt class="py-name">ins</tt> <tt class="py-op">==</tt> <tt id="link-70" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-70', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">ins</tt><tt class="py-op">[</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt id="link-71" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-71', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt> <tt class="py-op">!=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt>
<a name="L127"></a><tt class="py-lineno">127</tt>  <tt class="py-line">                <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-72" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-72', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt> <tt class="py-op">:</tt> </tt>
<a name="L128"></a><tt class="py-lineno">128</tt>  <tt class="py-line">                    <tt class="py-keyword">print</tt> <tt class="py-string">"%s[ %s%s "</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt id="link-73" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-73', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="misc.Color.red" class="py-name" href="#" onclick="return doclink('link-74', 'red', 'link-31');">red</a></tt><tt class="py-op">,</tt> <tt id="link-75" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-75', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">name</tt><tt class="py-op">,</tt> <tt id="link-76" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-76', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="misc.Color.green" class="py-name" href="#" onclick="return doclink('link-77', 'green', 'link-29');">green</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
<a name="L129"></a><tt class="py-lineno">129</tt>  <tt class="py-line">                    <tt class="py-keyword">print</tt> <tt class="py-string">' '</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-string">"%s"</tt> <tt class="py-op">%</tt> <tt class="py-name">c</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-keyword">for</tt> <tt class="py-name">c</tt> <tt class="py-keyword">in</tt> <tt id="link-78" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-78', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-string">"]%s"</tt> <tt class="py-op">%</tt> <tt id="link-79" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-79', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-80', 'normal', 'link-35');">normal</a></tt><tt class="py-op">,</tt> </tt>
<a name="L130"></a><tt class="py-lineno">130</tt>  <tt class="py-line">                <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
<a name="L131"></a><tt class="py-lineno">131</tt>  <tt class="py-line">                    <tt class="py-keyword">print</tt> <tt class="py-string">"%s["</tt> <tt class="py-op">%</tt> <tt id="link-81" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-81', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="misc.Color.blue" class="py-name" href="#" onclick="return doclink('link-82', 'blue', 'link-33');">blue</a></tt><tt class="py-op">,</tt> <tt class="py-string">' '</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-string">"%s"</tt> <tt class="py-op">%</tt> <tt class="py-name">c</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-keyword">for</tt> <tt class="py-name">c</tt> <tt class="py-keyword">in</tt> <tt id="link-83" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-83', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-string">"]%s"</tt> <tt class="py-op">%</tt> <tt id="link-84" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-84', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-85', 'normal', 'link-35');">normal</a></tt><tt class="py-op">,</tt> </tt>
<a name="L132"></a><tt class="py-lineno">132</tt>  <tt class="py-line"> </tt>
<a name="L133"></a><tt class="py-lineno">133</tt>  <tt class="py-line">            <tt class="py-name">idx</tt> <tt class="py-op">+=</tt> <tt class="py-name">ins</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="analysis.MethodAnalysis.get_length
dvm.DBC.get_length
dvm.DBCSpe.get_length
dvm.DalvikCode.get_length
dvm.EncodedMethod.get_length
dvm.FillArrayData.get_length
dvm.MapItem.get_length
dvm.PackedSwitch.get_length
dvm.SparseSwitch.get_length
jvm.CodeAttribute.get_length
jvm.CpInfo.get_length
jvm.EmptyConstant.get_length
jvm.FieldInfo.get_length
jvm.JBC.get_length
jvm.MethodInfo.get_length" class="py-name" href="#" onclick="return doclink('link-86', 'get_length', 'link-53');">get_length</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
<a name="L134"></a><tt class="py-lineno">134</tt>  <tt class="py-line">            <tt class="py-name">nb</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
<a name="L135"></a><tt class="py-lineno">135</tt>  <tt class="py-line"> </tt>
<a name="L136"></a><tt class="py-lineno">136</tt>  <tt class="py-line">            <tt class="py-keyword">print</tt> </tt>
<a name="L137"></a><tt class="py-lineno">137</tt>  <tt class="py-line">        <tt class="py-keyword">print</tt> </tt>
</div><a name="L138"></a><tt class="py-lineno">138</tt>  <tt class="py-line"> </tt>
<a name="PrettyShow1bis"></a><div id="PrettyShow1bis-def"><a name="L139"></a><tt class="py-lineno">139</tt> <a class="py-toggle" href="#" id="PrettyShow1bis-toggle" onclick="return toggle('PrettyShow1bis');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#PrettyShow1bis">PrettyShow1bis</a><tt class="py-op">(</tt> <tt class="py-param">basic_blocks</tt> <tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="PrettyShow1bis-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="PrettyShow1bis-expanded"><a name="L140"></a><tt class="py-lineno">140</tt>  <tt class="py-line">    <tt class="py-name">idx</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
<a name="L141"></a><tt class="py-lineno">141</tt>  <tt class="py-line">    <tt class="py-name">nb</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
<a name="L142"></a><tt class="py-lineno">142</tt>  <tt class="py-line">    <tt class="py-keyword">for</tt> <tt id="link-87" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-87', 'i', 'link-24');">i</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">basic_blocks</tt> <tt class="py-op">:</tt> </tt>
<a name="L143"></a><tt class="py-lineno">143</tt>  <tt class="py-line"> </tt>
<a name="L144"></a><tt class="py-lineno">144</tt>  <tt class="py-line">        <tt class="py-keyword">print</tt> <tt class="py-string">"%s : "</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt id="link-88" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-88', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt><tt class="py-op">)</tt> </tt>
<a name="L145"></a><tt class="py-lineno">145</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt class="py-name">ins</tt> <tt class="py-keyword">in</tt> <tt id="link-89" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-89', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">ins</tt> <tt class="py-op">:</tt> </tt>
<a name="L146"></a><tt class="py-lineno">146</tt>  <tt class="py-line">            <tt class="py-keyword">print</tt> <tt class="py-string">"\t%d(%x)"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">nb</tt><tt class="py-op">,</tt> <tt class="py-name">idx</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
<a name="L147"></a><tt class="py-lineno">147</tt>  <tt class="py-line">            <tt class="py-name">ins</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="analysis.BreakBlock.show
analysis.JVMBasicBlock.show
analysis.MethodAnalysis.show
analysis.Stack.show
analysis.StackTraces.show
analysis.TaintedPackage.show
androguard.Androguard.show
androguard.BC.show
apk.APK.show
bytecode.MethodBC.show
diff.DiffBB.show
diff.Method.show
dvm.AnnotationElement.show
dvm.AnnotationItem.show
dvm.AnnotationOffItem.show
dvm.AnnotationSetItem.show
dvm.AnnotationSetRefItem.show
dvm.AnnotationSetRefList.show
dvm.AnnotationsDirectoryItem.show
dvm.ClassDataItem.show
dvm.ClassDefItem.show
dvm.ClassItem.show
dvm.CodeItem.show
dvm.DBC.show
dvm.DBCSpe.show
dvm.DBGBytecode.show
dvm.DCode.show
dvm.DalvikCode.show
dvm.DalvikVMFormat.show
dvm.DebugInfoItem.show
dvm.DebugInfoItem2.show
dvm.EncodedAnnotation.show
dvm.EncodedArray.show
dvm.EncodedArrayItem.show
dvm.EncodedCatchHandler.show
dvm.EncodedCatchHandlerList.show
dvm.EncodedField.show
dvm.EncodedMethod.show
dvm.EncodedTypeAddrPair.show
dvm.EncodedValue.show
dvm.FieldAnnotation.show
dvm.FieldItem.show
dvm.FillArrayData.show
dvm.HeaderItem.show
dvm.IdItem.show
dvm.MapItem.show
dvm.MapList.show
dvm.MethodAnnotation.show
dvm.MethodIdItem.show
dvm.MethodItem.show
dvm.PackedSwitch.show
dvm.ParameterAnnotation.show
dvm.ProtoIdItem.show
dvm.ProtoItem.show
dvm.SparseSwitch.show
dvm.StringDataItem.show
dvm.StringIdItem.show
dvm.TypeIdItem.show
dvm.TypeItem.show
dvm.TypeLItem.show
dvm.TypeList.show
jvm.Annotation.show
jvm.AnnotationDefaultAttribute.show
jvm.AppendFrame.show
jvm.ArrayValue.show
jvm.AttributeInfo.show
jvm.ChopFrame.show
jvm.CodeAttribute.show
jvm.ConstantValueAttribute.show
jvm.CpInfo.show
jvm.DeprecatedAttribute.show
jvm.ElementValue.show
jvm.ElementValuePair.show
jvm.EmptyConstant.show
jvm.EnclosingMethodAttribute.show
jvm.ExceptionsAttribute.show
jvm.FieldInfo.show
jvm.FullFrame.show
jvm.InnerClassesAttribute.show
jvm.InnerClassesDesc.show
jvm.JAR.show
jvm.JBC.show
jvm.JVMFormat.show
jvm.JavaCode.show
jvm.LineNumberTableAttribute.show
jvm.LocalVariableTableAttribute.show
jvm.LocalVariableTypeTableAttribute.show
jvm.MethodInfo.show
jvm.ParameterAnnotation.show
jvm.RuntimeInvisibleAnnotationsAttribute.show
jvm.RuntimeInvisibleParameterAnnotationsAttribute.show
jvm.RuntimeVisibleAnnotationsAttribute.show
jvm.RuntimeVisibleParameterAnnotationsAttribute.show
jvm.SameFrame.show
jvm.SameFrameExtended.show
jvm.SameLocals1StackItemFrame.show
jvm.SameLocals1StackItemFrameExtended.show
jvm.SignatureAttribute.show
jvm.SourceDebugExtensionAttribute.show
jvm.SourceFileAttribute.show
jvm.StackMapTableAttribute.show
jvm.SyntheticAttribute.show
jvm.VerificationTypeInfo.show" class="py-name" href="#" onclick="return doclink('link-90', 'show', 'link-46');">show</a></tt><tt class="py-op">(</tt> <tt class="py-name">idx</tt> <tt class="py-op">)</tt> </tt>
<a name="L148"></a><tt class="py-lineno">148</tt>  <tt class="py-line"> </tt>
<a name="L149"></a><tt class="py-lineno">149</tt>  <tt class="py-line">            <tt class="py-keyword">if</tt> <tt class="py-name">ins</tt> <tt class="py-op">==</tt> <tt id="link-91" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-91', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">ins</tt><tt class="py-op">[</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-keyword">and</tt> <tt id="link-92" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-92', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt> <tt class="py-op">!=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt>
<a name="L150"></a><tt class="py-lineno">150</tt>  <tt class="py-line">                <tt class="py-keyword">print</tt> <tt class="py-string">"["</tt><tt class="py-op">,</tt> <tt class="py-string">' '</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-string">"%s"</tt> <tt class="py-op">%</tt> <tt class="py-name">c</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-keyword">for</tt> <tt class="py-name">c</tt> <tt class="py-keyword">in</tt> <tt id="link-93" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-93', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-string">"]"</tt><tt class="py-op">,</tt> </tt>
<a name="L151"></a><tt class="py-lineno">151</tt>  <tt class="py-line"> </tt>
<a name="L152"></a><tt class="py-lineno">152</tt>  <tt class="py-line">            <tt class="py-name">idx</tt> <tt class="py-op">+=</tt> <tt class="py-name">ins</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="analysis.MethodAnalysis.get_length
dvm.DBC.get_length
dvm.DBCSpe.get_length
dvm.DalvikCode.get_length
dvm.EncodedMethod.get_length
dvm.FillArrayData.get_length
dvm.MapItem.get_length
dvm.PackedSwitch.get_length
dvm.SparseSwitch.get_length
jvm.CodeAttribute.get_length
jvm.CpInfo.get_length
jvm.EmptyConstant.get_length
jvm.FieldInfo.get_length
jvm.JBC.get_length
jvm.MethodInfo.get_length" class="py-name" href="#" onclick="return doclink('link-94', 'get_length', 'link-53');">get_length</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
<a name="L153"></a><tt class="py-lineno">153</tt>  <tt class="py-line">            <tt class="py-name">nb</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
<a name="L154"></a><tt class="py-lineno">154</tt>  <tt class="py-line"> </tt>
<a name="L155"></a><tt class="py-lineno">155</tt>  <tt class="py-line">            <tt class="py-keyword">print</tt> </tt>
<a name="L156"></a><tt class="py-lineno">156</tt>  <tt class="py-line">        <tt class="py-keyword">print</tt> </tt>
</div><a name="L157"></a><tt class="py-lineno">157</tt>  <tt class="py-line"> </tt>
<a name="L158"></a><tt class="py-lineno">158</tt>  <tt class="py-line"><tt class="py-comment"># Use to print diff basic blocks !</tt> </tt>
<a name="PrettyShow2"></a><div id="PrettyShow2-def"><a name="L159"></a><tt class="py-lineno">159</tt> <a class="py-toggle" href="#" id="PrettyShow2-toggle" onclick="return toggle('PrettyShow2');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#PrettyShow2">PrettyShow2</a><tt class="py-op">(</tt> <tt class="py-param">basic_blocks</tt> <tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="PrettyShow2-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="PrettyShow2-expanded"><a name="L160"></a><tt class="py-lineno">160</tt>  <tt class="py-line">    <tt class="py-name">idx</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
<a name="L161"></a><tt class="py-lineno">161</tt>  <tt class="py-line">    <tt class="py-name">nb</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
<a name="L162"></a><tt class="py-lineno">162</tt>  <tt class="py-line">    <tt class="py-keyword">for</tt> <tt id="link-95" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-95', 'i', 'link-24');">i</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">basic_blocks</tt> <tt class="py-op">:</tt> </tt>
<a name="L163"></a><tt class="py-lineno">163</tt>  <tt class="py-line">        <tt class="py-keyword">if</tt> <tt id="link-96" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-96', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">bb_tag</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
<a name="L164"></a><tt class="py-lineno">164</tt>  <tt class="py-line">            <tt class="py-keyword">print</tt> <tt class="py-string">"%sDIFF%s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt id="link-97" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-97', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-98" class="py-name" targets="Variable misc.Color.cyan=misc.Color-class.html#cyan"><a title="misc.Color.cyan" class="py-name" href="#" onclick="return doclink('link-98', 'cyan', 'link-98');">cyan</a></tt><tt class="py-op">,</tt> <tt id="link-99" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-99', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-100', 'normal', 'link-35');">normal</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
<a name="L165"></a><tt class="py-lineno">165</tt>  <tt class="py-line">        <tt class="py-keyword">elif</tt> <tt id="link-101" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-101', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">bb_tag</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt> <tt class="py-op">:</tt> </tt>
<a name="L166"></a><tt class="py-lineno">166</tt>  <tt class="py-line">            <tt class="py-keyword">print</tt> <tt class="py-string">"%sNEW%s"</tt> <tt class="py-op">%</tt><tt class="py-op">(</tt><tt id="link-102" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-102', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="misc.Color.cyan" class="py-name" href="#" onclick="return doclink('link-103', 'cyan', 'link-98');">cyan</a></tt><tt class="py-op">,</tt> <tt id="link-104" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-104', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-105', 'normal', 'link-35');">normal</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
<a name="L167"></a><tt class="py-lineno">167</tt>  <tt class="py-line"> </tt>
<a name="L168"></a><tt class="py-lineno">168</tt>  <tt class="py-line">        <tt class="py-keyword">print</tt> <tt class="py-string">"%s%s%s : "</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt id="link-106" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-106', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-107" class="py-name"><a title="misc.Color.purple" class="py-name" href="#" onclick="return doclink('link-107', 'purple', 'link-56');">purple</a></tt><tt class="py-op">,</tt> <tt id="link-108" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-108', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">name</tt><tt class="py-op">,</tt> <tt id="link-109" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-109', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-110', 'normal', 'link-35');">normal</a></tt><tt class="py-op">)</tt> </tt>
<a name="L169"></a><tt class="py-lineno">169</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt class="py-name">ins</tt> <tt class="py-keyword">in</tt> <tt id="link-111" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-111', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">ins</tt> <tt class="py-op">:</tt> </tt>
<a name="L170"></a><tt class="py-lineno">170</tt>  <tt class="py-line">            <tt class="py-keyword">print</tt> <tt class="py-string">"\t%s%d%s(%s%x%s)"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt id="link-112" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-112', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="misc.Color.yellow" class="py-name" href="#" onclick="return doclink('link-113', 'yellow', 'link-39');">yellow</a></tt><tt class="py-op">,</tt> <tt class="py-name">nb</tt><tt class="py-op">,</tt> <tt id="link-114" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-114', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-115', 'normal', 'link-35');">normal</a></tt><tt class="py-op">,</tt> <tt id="link-116" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-116', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="misc.Color.yellow" class="py-name" href="#" onclick="return doclink('link-117', 'yellow', 'link-39');">yellow</a></tt><tt class="py-op">,</tt> <tt class="py-name">idx</tt><tt class="py-op">,</tt> <tt id="link-118" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-118', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-119', 'normal', 'link-35');">normal</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
<a name="L171"></a><tt class="py-lineno">171</tt>  <tt class="py-line"> </tt>
<a name="L172"></a><tt class="py-lineno">172</tt>  <tt class="py-line">            <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
<a name="L173"></a><tt class="py-lineno">173</tt>  <tt class="py-line">                <tt class="py-name">tag</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">ins</tt><tt class="py-op">,</tt> <tt class="py-string">"diff_tag"</tt><tt class="py-op">)</tt> </tt>
<a name="L174"></a><tt class="py-lineno">174</tt>  <tt class="py-line">            <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt> <tt class="py-op">:</tt> </tt>
<a name="L175"></a><tt class="py-lineno">175</tt>  <tt class="py-line">                <tt class="py-name">tag</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
<a name="L176"></a><tt class="py-lineno">176</tt>  <tt class="py-line"> </tt>
<a name="L177"></a><tt class="py-lineno">177</tt>  <tt class="py-line">            <tt class="py-keyword">if</tt> <tt class="py-name">tag</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
<a name="L178"></a><tt class="py-lineno">178</tt>  <tt class="py-line">                <tt class="py-keyword">print</tt> <tt class="py-string">"%s"</tt> <tt class="py-op">%</tt> <tt id="link-120" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-120', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="misc.Color.green" class="py-name" href="#" onclick="return doclink('link-121', 'green', 'link-29');">green</a></tt><tt class="py-op">,</tt> </tt>
<a name="L179"></a><tt class="py-lineno">179</tt>  <tt class="py-line">            <tt class="py-keyword">elif</tt> <tt class="py-name">tag</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt> <tt class="py-op">:</tt> </tt>
<a name="L180"></a><tt class="py-lineno">180</tt>  <tt class="py-line">                <tt class="py-keyword">print</tt> <tt class="py-string">"%s"</tt> <tt class="py-op">%</tt> <tt id="link-122" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-122', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="misc.Color.red" class="py-name" href="#" onclick="return doclink('link-123', 'red', 'link-31');">red</a></tt><tt class="py-op">,</tt> </tt>
<a name="L181"></a><tt class="py-lineno">181</tt>  <tt class="py-line"> </tt>
<a name="L182"></a><tt class="py-lineno">182</tt>  <tt class="py-line">            <tt class="py-name">ins</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="analysis.BreakBlock.show
analysis.JVMBasicBlock.show
analysis.MethodAnalysis.show
analysis.Stack.show
analysis.StackTraces.show
analysis.TaintedPackage.show
androguard.Androguard.show
androguard.BC.show
apk.APK.show
bytecode.MethodBC.show
diff.DiffBB.show
diff.Method.show
dvm.AnnotationElement.show
dvm.AnnotationItem.show
dvm.AnnotationOffItem.show
dvm.AnnotationSetItem.show
dvm.AnnotationSetRefItem.show
dvm.AnnotationSetRefList.show
dvm.AnnotationsDirectoryItem.show
dvm.ClassDataItem.show
dvm.ClassDefItem.show
dvm.ClassItem.show
dvm.CodeItem.show
dvm.DBC.show
dvm.DBCSpe.show
dvm.DBGBytecode.show
dvm.DCode.show
dvm.DalvikCode.show
dvm.DalvikVMFormat.show
dvm.DebugInfoItem.show
dvm.DebugInfoItem2.show
dvm.EncodedAnnotation.show
dvm.EncodedArray.show
dvm.EncodedArrayItem.show
dvm.EncodedCatchHandler.show
dvm.EncodedCatchHandlerList.show
dvm.EncodedField.show
dvm.EncodedMethod.show
dvm.EncodedTypeAddrPair.show
dvm.EncodedValue.show
dvm.FieldAnnotation.show
dvm.FieldItem.show
dvm.FillArrayData.show
dvm.HeaderItem.show
dvm.IdItem.show
dvm.MapItem.show
dvm.MapList.show
dvm.MethodAnnotation.show
dvm.MethodIdItem.show
dvm.MethodItem.show
dvm.PackedSwitch.show
dvm.ParameterAnnotation.show
dvm.ProtoIdItem.show
dvm.ProtoItem.show
dvm.SparseSwitch.show
dvm.StringDataItem.show
dvm.StringIdItem.show
dvm.TypeIdItem.show
dvm.TypeItem.show
dvm.TypeLItem.show
dvm.TypeList.show
jvm.Annotation.show
jvm.AnnotationDefaultAttribute.show
jvm.AppendFrame.show
jvm.ArrayValue.show
jvm.AttributeInfo.show
jvm.ChopFrame.show
jvm.CodeAttribute.show
jvm.ConstantValueAttribute.show
jvm.CpInfo.show
jvm.DeprecatedAttribute.show
jvm.ElementValue.show
jvm.ElementValuePair.show
jvm.EmptyConstant.show
jvm.EnclosingMethodAttribute.show
jvm.ExceptionsAttribute.show
jvm.FieldInfo.show
jvm.FullFrame.show
jvm.InnerClassesAttribute.show
jvm.InnerClassesDesc.show
jvm.JAR.show
jvm.JBC.show
jvm.JVMFormat.show
jvm.JavaCode.show
jvm.LineNumberTableAttribute.show
jvm.LocalVariableTableAttribute.show
jvm.LocalVariableTypeTableAttribute.show
jvm.MethodInfo.show
jvm.ParameterAnnotation.show
jvm.RuntimeInvisibleAnnotationsAttribute.show
jvm.RuntimeInvisibleParameterAnnotationsAttribute.show
jvm.RuntimeVisibleAnnotationsAttribute.show
jvm.RuntimeVisibleParameterAnnotationsAttribute.show
jvm.SameFrame.show
jvm.SameFrameExtended.show
jvm.SameLocals1StackItemFrame.show
jvm.SameLocals1StackItemFrameExtended.show
jvm.SignatureAttribute.show
jvm.SourceDebugExtensionAttribute.show
jvm.SourceFileAttribute.show
jvm.StackMapTableAttribute.show
jvm.SyntheticAttribute.show
jvm.VerificationTypeInfo.show" class="py-name" href="#" onclick="return doclink('link-124', 'show', 'link-46');">show</a></tt><tt class="py-op">(</tt> <tt class="py-name">idx</tt> <tt class="py-op">)</tt> </tt>
<a name="L183"></a><tt class="py-lineno">183</tt>  <tt class="py-line"> </tt>
<a name="L184"></a><tt class="py-lineno">184</tt>  <tt class="py-line">            <tt class="py-name">childs</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
<a name="L185"></a><tt class="py-lineno">185</tt>  <tt class="py-line">            <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
<a name="L186"></a><tt class="py-lineno">186</tt>  <tt class="py-line">                <tt class="py-name">childs</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">ins</tt><tt class="py-op">,</tt> <tt class="py-string">"childs"</tt> <tt class="py-op">)</tt> </tt>
<a name="L187"></a><tt class="py-lineno">187</tt>  <tt class="py-line">            <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt> <tt class="py-op">:</tt> </tt>
<a name="L188"></a><tt class="py-lineno">188</tt>  <tt class="py-line">                <tt class="py-keyword">if</tt> <tt class="py-name">ins</tt> <tt class="py-op">==</tt> <tt id="link-125" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-125', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">ins</tt><tt class="py-op">[</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt>
<a name="L189"></a><tt class="py-lineno">189</tt>  <tt class="py-line">                    <tt class="py-keyword">if</tt> <tt id="link-126" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-126', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt> <tt class="py-op">!=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt>
<a name="L190"></a><tt class="py-lineno">190</tt>  <tt class="py-line">                        <tt class="py-name">childs</tt> <tt class="py-op">=</tt> <tt id="link-127" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-127', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt> </tt>
<a name="L191"></a><tt class="py-lineno">191</tt>  <tt class="py-line"> </tt>
<a name="L192"></a><tt class="py-lineno">192</tt>  <tt class="py-line">            <tt class="py-keyword">if</tt> <tt class="py-name">childs</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt> <tt class="py-keyword">and</tt> <tt class="py-name">childs</tt> <tt class="py-op">!=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt>
<a name="L193"></a><tt class="py-lineno">193</tt>  <tt class="py-line">                <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">childs</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt> <tt class="py-op">:</tt> </tt>
<a name="L194"></a><tt class="py-lineno">194</tt>  <tt class="py-line">                    <tt class="py-keyword">print</tt> <tt class="py-string">"%s[ %s%s "</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt id="link-128" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-128', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="misc.Color.red" class="py-name" href="#" onclick="return doclink('link-129', 'red', 'link-31');">red</a></tt><tt class="py-op">,</tt> <tt class="py-name">childs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">name</tt><tt class="py-op">,</tt> <tt id="link-130" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-130', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="misc.Color.green" class="py-name" href="#" onclick="return doclink('link-131', 'green', 'link-29');">green</a></tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
<a name="L195"></a><tt class="py-lineno">195</tt>  <tt class="py-line">                    <tt class="py-keyword">print</tt> <tt class="py-string">' '</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-string">"%s"</tt> <tt class="py-op">%</tt> <tt class="py-name">c</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-keyword">for</tt> <tt class="py-name">c</tt> <tt class="py-keyword">in</tt> <tt class="py-name">childs</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-string">"]%s"</tt> <tt class="py-op">%</tt> <tt id="link-132" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-132', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-133', 'normal', 'link-35');">normal</a></tt><tt class="py-op">,</tt> </tt>
<a name="L196"></a><tt class="py-lineno">196</tt>  <tt class="py-line">                <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
<a name="L197"></a><tt class="py-lineno">197</tt>  <tt class="py-line">                    <tt class="py-keyword">print</tt> <tt class="py-string">"%s["</tt> <tt class="py-op">%</tt> <tt id="link-134" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-134', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="misc.Color.blue" class="py-name" href="#" onclick="return doclink('link-135', 'blue', 'link-33');">blue</a></tt><tt class="py-op">,</tt> <tt class="py-string">' '</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-string">"%s"</tt> <tt class="py-op">%</tt> <tt class="py-name">c</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">name</tt> <tt class="py-keyword">for</tt> <tt class="py-name">c</tt> <tt class="py-keyword">in</tt> <tt class="py-name">childs</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-string">"]%s"</tt> <tt class="py-op">%</tt> <tt id="link-136" class="py-name"><a title="misc.Color" class="py-name" href="#" onclick="return doclink('link-136', 'Color', 'link-1');">Color</a></tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="misc.Color.normal" class="py-name" href="#" onclick="return doclink('link-137', 'normal', 'link-35');">normal</a></tt><tt class="py-op">,</tt> </tt>
<a name="L198"></a><tt class="py-lineno">198</tt>  <tt class="py-line"> </tt>
<a name="L199"></a><tt class="py-lineno">199</tt>  <tt class="py-line">            <tt class="py-keyword">if</tt> <tt class="py-name">tag</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt> <tt class="py-op">:</tt> </tt>
<a name="L200"></a><tt class="py-lineno">200</tt>  <tt class="py-line">                <tt class="py-name">idx</tt> <tt class="py-op">+=</tt> <tt class="py-name">ins</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="analysis.MethodAnalysis.get_length
dvm.DBC.get_length
dvm.DBCSpe.get_length
dvm.DalvikCode.get_length
dvm.EncodedMethod.get_length
dvm.FillArrayData.get_length
dvm.MapItem.get_length
dvm.PackedSwitch.get_length
dvm.SparseSwitch.get_length
jvm.CodeAttribute.get_length
jvm.CpInfo.get_length
jvm.EmptyConstant.get_length
jvm.FieldInfo.get_length
jvm.JBC.get_length
jvm.MethodInfo.get_length" class="py-name" href="#" onclick="return doclink('link-138', 'get_length', 'link-53');">get_length</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
<a name="L201"></a><tt class="py-lineno">201</tt>  <tt class="py-line"> </tt>
<a name="L202"></a><tt class="py-lineno">202</tt>  <tt class="py-line">            <tt class="py-name">nb</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
<a name="L203"></a><tt class="py-lineno">203</tt>  <tt class="py-line"> </tt>
<a name="L204"></a><tt class="py-lineno">204</tt>  <tt class="py-line">            <tt class="py-keyword">print</tt> </tt>
<a name="L205"></a><tt class="py-lineno">205</tt>  <tt class="py-line">        <tt class="py-keyword">print</tt> </tt>
</div><a name="L206"></a><tt class="py-lineno">206</tt>  <tt class="py-line"> </tt>
<a name="method2dot"></a><div id="method2dot-def"><a name="L207"></a><tt class="py-lineno">207</tt> <a class="py-toggle" href="#" id="method2dot-toggle" onclick="return toggle('method2dot');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#method2dot">method2dot</a><tt class="py-op">(</tt> <tt class="py-param">mx</tt> <tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="method2dot-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="method2dot-expanded"><a name="L208"></a><tt class="py-lineno">208</tt>  <tt class="py-line">    <tt class="py-docstring">"""</tt> </tt>
<a name="L209"></a><tt class="py-lineno">209</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
<a name="L210"></a><tt class="py-lineno">210</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
<a name="L211"></a><tt class="py-lineno">211</tt>  <tt class="py-line">    <tt class="py-name">buff</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
<a name="L212"></a><tt class="py-lineno">212</tt>  <tt class="py-line">    <tt class="py-keyword">for</tt> <tt id="link-139" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-139', 'i', 'link-24');">i</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">mx</tt><tt class="py-op">.</tt><tt class="py-name">basic_blocks</tt><tt class="py-op">.</tt><tt id="link-140" class="py-name" targets="Method analysis.BasicBlocks.get()=analysis.BasicBlocks-class.html#get,Method analysis.Stack.get()=analysis.Stack-class.html#get,Method analysis.StackTraces.get()=analysis.StackTraces-class.html#get,Method analysis.TaintedInteger.get()=analysis.TaintedInteger-class.html#get,Method androguard.Androguard.get()=androguard.Androguard-class.html#get,Method androguard.BC.get()=androguard.BC-class.html#get,Method androguard.WM.get()=androguard.WM-class.html#get,Method dvm.DCode.get()=dvm.DCode-class.html#get,Method dvm.IdItem.get()=dvm.IdItem-class.html#get,Method dvm.MethodIdItem.get()=dvm.MethodIdItem-class.html#get,Method dvm.ProtoIdItem.get()=dvm.ProtoIdItem-class.html#get,Method dvm.StringDataItem.get()=dvm.StringDataItem-class.html#get,Method dvm.TypeIdItem.get()=dvm.TypeIdItem-class.html#get,Method jvm.JavaCode.get()=jvm.JavaCode-class.html#get"><a title="analysis.BasicBlocks.get
analysis.Stack.get
analysis.StackTraces.get
analysis.TaintedInteger.get
androguard.Androguard.get
androguard.BC.get
androguard.WM.get
dvm.DCode.get
dvm.IdItem.get
dvm.MethodIdItem.get
dvm.ProtoIdItem.get
dvm.StringDataItem.get
dvm.TypeIdItem.get
jvm.JavaCode.get" class="py-name" href="#" onclick="return doclink('link-140', 'get', 'link-140');">get</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
<a name="L213"></a><tt class="py-lineno">213</tt>  <tt class="py-line">        <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-string">"green"</tt> </tt>
<a name="L214"></a><tt class="py-lineno">214</tt>  <tt class="py-line">        <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-141" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-141', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
<a name="L215"></a><tt class="py-lineno">215</tt>  <tt class="py-line">            <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-string">"red"</tt> </tt>
<a name="L216"></a><tt class="py-lineno">216</tt>  <tt class="py-line">        <tt class="py-keyword">elif</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-142" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-142', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
<a name="L217"></a><tt class="py-lineno">217</tt>  <tt class="py-line">            <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-string">"blue"</tt> </tt>
<a name="L218"></a><tt class="py-lineno">218</tt>  <tt class="py-line"> </tt>
<a name="L219"></a><tt class="py-lineno">219</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt id="link-143" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-143', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">childs</tt> <tt class="py-op">:</tt> </tt>
<a name="L220"></a><tt class="py-lineno">220</tt>  <tt class="py-line">            <tt class="py-name">buff</tt> <tt class="py-op">+=</tt> <tt class="py-string">"\"%s\" -&gt; \"%s\" [color=\"%s\"];\n"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt> <tt id="link-144" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-144', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt id="link-145" class="py-name" targets="Method analysis.DVMBasicBlock.get_name()=analysis.DVMBasicBlock-class.html#get_name,Method analysis.ExternalFM.get_name()=analysis.ExternalFM-class.html#get_name,Method analysis.ExternalMethod.get_name()=analysis.ExternalMethod-class.html#get_name,Method analysis.JVMBasicBlock.get_name()=analysis.JVMBasicBlock-class.html#get_name,Method analysis.PathP.get_name()=analysis.PathP-class.html#get_name,Method analysis.TaintedPackage.get_name()=analysis.TaintedPackage-class.html#get_name,Method dvm.ClassItem.get_name()=dvm.ClassItem-class.html#get_name,Method dvm.DBC.get_name()=dvm.DBC-class.html#get_name,Method dvm.DBCSpe.get_name()=dvm.DBCSpe-class.html#get_name,Method dvm.EncodedField.get_name()=dvm.EncodedField-class.html#get_name,Method dvm.EncodedMethod.get_name()=dvm.EncodedMethod-class.html#get_name,Method dvm.FieldItem.get_name()=dvm.FieldItem-class.html#get_name,Method dvm.FillArrayData.get_name()=dvm.FillArrayData-class.html#get_name,Method dvm.MethodItem.get_name()=dvm.MethodItem-class.html#get_name,Method dvm.PackedSwitch.get_name()=dvm.PackedSwitch-class.html#get_name,Method dvm.SparseSwitch.get_name()=dvm.SparseSwitch-class.html#get_name,Method jvm.AttributeInfo.get_name()=jvm.AttributeInfo-class.html#get_name,Method jvm.CpInfo.get_name()=jvm.CpInfo-class.html#get_name,Method jvm.EmptyConstant.get_name()=jvm.EmptyConstant-class.html#get_name,Method jvm.FieldInfo.get_name()=jvm.FieldInfo-class.html#get_name,Method jvm.JBC.get_name()=jvm.JBC-class.html#get_name,Method jvm.JVMFormat.get_name()=jvm.JVMFormat-class.html#get_name,Method jvm.MethodInfo.get_name()=jvm.MethodInfo-class.html#get_name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-145', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">j</tt><tt class="py-op">[</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-146', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">val</tt> <tt class="py-op">)</tt> </tt>
<a name="L221"></a><tt class="py-lineno">221</tt>  <tt class="py-line">            <tt class="py-keyword">if</tt> <tt class="py-name">val</tt> <tt class="py-op">==</tt> <tt class="py-string">"red"</tt> <tt class="py-op">:</tt> </tt>
<a name="L222"></a><tt class="py-lineno">222</tt>  <tt class="py-line">                <tt class="py-name">val</tt> <tt class="py-op">=</tt> <tt class="py-string">"green"</tt> </tt>
<a name="L223"></a><tt class="py-lineno">223</tt>  <tt class="py-line"> </tt>
<a name="L224"></a><tt class="py-lineno">224</tt>  <tt class="py-line">        <tt class="py-name">idx</tt> <tt class="py-op">=</tt> <tt id="link-147" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-147', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">start</tt> </tt>
<a name="L225"></a><tt class="py-lineno">225</tt>  <tt class="py-line">        <tt class="py-name">label</tt> <tt class="py-op">=</tt> <tt class="py-string">""</tt> </tt>
<a name="L226"></a><tt class="py-lineno">226</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt class="py-name">ins</tt> <tt class="py-keyword">in</tt> <tt id="link-148" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-148', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">ins</tt> <tt class="py-op">:</tt> </tt>
<a name="L227"></a><tt class="py-lineno">227</tt>  <tt class="py-line">            <tt class="py-name">label</tt> <tt class="py-op">+=</tt> <tt class="py-string">"%x %s\l"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">idx</tt><tt class="py-op">,</tt> <tt class="py-name">ins</tt><tt class="py-op">.</tt><tt id="link-149" class="py-name" targets="Method dvm.DBC.show_buff()=dvm.DBC-class.html#show_buff,Method dvm.DBCSpe.show_buff()=dvm.DBCSpe-class.html#show_buff,Method dvm.FillArrayData.show_buff()=dvm.FillArrayData-class.html#show_buff,Method dvm.PackedSwitch.show_buff()=dvm.PackedSwitch-class.html#show_buff,Method dvm.SparseSwitch.show_buff()=dvm.SparseSwitch-class.html#show_buff,Method jvm.JBC.show_buff()=jvm.JBC-class.html#show_buff"><a title="dvm.DBC.show_buff
dvm.DBCSpe.show_buff
dvm.FillArrayData.show_buff
dvm.PackedSwitch.show_buff
dvm.SparseSwitch.show_buff
jvm.JBC.show_buff" class="py-name" href="#" onclick="return doclink('link-149', 'show_buff', 'link-149');">show_buff</a></tt><tt class="py-op">(</tt><tt class="py-name">idx</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
<a name="L228"></a><tt class="py-lineno">228</tt>  <tt class="py-line">            <tt class="py-name">idx</tt> <tt class="py-op">+=</tt> <tt class="py-name">ins</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="analysis.MethodAnalysis.get_length
dvm.DBC.get_length
dvm.DBCSpe.get_length
dvm.DalvikCode.get_length
dvm.EncodedMethod.get_length
dvm.FillArrayData.get_length
dvm.MapItem.get_length
dvm.PackedSwitch.get_length
dvm.SparseSwitch.get_length
jvm.CodeAttribute.get_length
jvm.CpInfo.get_length
jvm.EmptyConstant.get_length
jvm.FieldInfo.get_length
jvm.JBC.get_length
jvm.MethodInfo.get_length" class="py-name" href="#" onclick="return doclink('link-150', 'get_length', 'link-53');">get_length</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
<a name="L229"></a><tt class="py-lineno">229</tt>  <tt class="py-line"> </tt>
<a name="L230"></a><tt class="py-lineno">230</tt>  <tt class="py-line">        <tt class="py-name">buff</tt> <tt class="py-op">+=</tt>  <tt class="py-string">"\"%s\" [color=\"lightgray\", label=\"%s\"]\n"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt id="link-151" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-151', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-152', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">label</tt><tt class="py-op">)</tt> </tt>
<a name="L231"></a><tt class="py-lineno">231</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">buff</tt> </tt>
</div><a name="L232"></a><tt class="py-lineno">232</tt>  <tt class="py-line"> </tt>
<a name="method2format"></a><div id="method2format-def"><a name="L233"></a><tt class="py-lineno">233</tt> <a class="py-toggle" href="#" id="method2format-toggle" onclick="return toggle('method2format');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#method2format">method2format</a><tt class="py-op">(</tt> <tt class="py-param">output</tt><tt class="py-op">,</tt> <tt class="py-param">_format</tt><tt class="py-op">=</tt><tt class="py-string">"png"</tt><tt class="py-op">,</tt> <tt class="py-param">mx</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">raw</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> <tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="method2format-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="method2format-expanded"><a name="L234"></a><tt class="py-lineno">234</tt>  <tt class="py-line">    <tt class="py-docstring">"""</tt> </tt>
<a name="L235"></a><tt class="py-lineno">235</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
<a name="L236"></a><tt class="py-lineno">236</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
<a name="L237"></a><tt class="py-lineno">237</tt>  <tt class="py-line">    <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
<a name="L238"></a><tt class="py-lineno">238</tt>  <tt class="py-line">        <tt class="py-keyword">import</tt> <tt class="py-name">pydot</tt> </tt>
<a name="L239"></a><tt class="py-lineno">239</tt>  <tt class="py-line">    <tt class="py-keyword">except</tt> <tt class="py-name">ImportError</tt> <tt class="py-op">:</tt> </tt>
<a name="L240"></a><tt class="py-lineno">240</tt>  <tt class="py-line">        <tt id="link-153" class="py-name"><a title="error
error.error" class="py-name" href="#" onclick="return doclink('link-153', 'error', 'link-2');">error</a></tt><tt class="py-op">(</tt><tt class="py-string">"module pydot not found"</tt><tt class="py-op">)</tt> </tt>
<a name="L241"></a><tt class="py-lineno">241</tt>  <tt class="py-line"> </tt>
<a name="L242"></a><tt class="py-lineno">242</tt>  <tt class="py-line">    <tt class="py-name">buff</tt> <tt class="py-op">=</tt> <tt class="py-string">"digraph code {\n"</tt> </tt>
<a name="L243"></a><tt class="py-lineno">243</tt>  <tt class="py-line">    <tt class="py-name">buff</tt> <tt class="py-op">+=</tt> <tt class="py-string">"graph [bgcolor=white];\n"</tt> </tt>
<a name="L244"></a><tt class="py-lineno">244</tt>  <tt class="py-line">    <tt class="py-name">buff</tt> <tt class="py-op">+=</tt> <tt class="py-string">"node [color=lightgray, style=filled shape=box fontname=\"Courier\" fontsize=\"8\"];\n"</tt> </tt>
<a name="L245"></a><tt class="py-lineno">245</tt>  <tt class="py-line"> </tt>
<a name="L246"></a><tt class="py-lineno">246</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">raw</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt> <tt class="py-op">:</tt> </tt>
<a name="L247"></a><tt class="py-lineno">247</tt>  <tt class="py-line">        <tt class="py-name">buff</tt> <tt class="py-op">+=</tt> <tt id="link-154" class="py-name" targets="Function bytecode.method2dot()=bytecode-module.html#method2dot"><a title="bytecode.method2dot" class="py-name" href="#" onclick="return doclink('link-154', 'method2dot', 'link-154');">method2dot</a></tt><tt class="py-op">(</tt> <tt class="py-name">mx</tt> <tt class="py-op">)</tt> </tt>
<a name="L248"></a><tt class="py-lineno">248</tt>  <tt class="py-line">    <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
<a name="L249"></a><tt class="py-lineno">249</tt>  <tt class="py-line">        <tt class="py-name">buff</tt> <tt class="py-op">+=</tt> <tt class="py-name">raw</tt> </tt>
<a name="L250"></a><tt class="py-lineno">250</tt>  <tt class="py-line"> </tt>
<a name="L251"></a><tt class="py-lineno">251</tt>  <tt class="py-line">    <tt class="py-name">buff</tt> <tt class="py-op">+=</tt> <tt class="py-string">"}"</tt> </tt>
<a name="L252"></a><tt class="py-lineno">252</tt>  <tt class="py-line"> </tt>
<a name="L253"></a><tt class="py-lineno">253</tt>  <tt class="py-line">    <tt class="py-name">d</tt> <tt class="py-op">=</tt> <tt class="py-name">pydot</tt><tt class="py-op">.</tt><tt class="py-name">graph_from_dot_data</tt><tt class="py-op">(</tt> <tt class="py-name">buff</tt> <tt class="py-op">)</tt> </tt>
<a name="L254"></a><tt class="py-lineno">254</tt>  <tt class="py-line"> </tt>
<a name="L255"></a><tt class="py-lineno">255</tt>  <tt class="py-line">    <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">d</tt><tt class="py-op">,</tt> <tt class="py-string">"write_"</tt> <tt class="py-op">+</tt> <tt class="py-name">_format</tt><tt class="py-op">)</tt><tt class="py-op">(</tt> <tt class="py-name">output</tt> <tt class="py-op">)</tt> </tt>
</div><a name="L256"></a><tt class="py-lineno">256</tt>  <tt class="py-line"> </tt>
<a name="method2png"></a><div id="method2png-def"><a name="L257"></a><tt class="py-lineno">257</tt> <a class="py-toggle" href="#" id="method2png-toggle" onclick="return toggle('method2png');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#method2png">method2png</a><tt class="py-op">(</tt> <tt class="py-param">output</tt><tt class="py-op">,</tt> <tt class="py-param">mx</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">raw</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> <tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="method2png-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="method2png-expanded"><a name="L258"></a><tt class="py-lineno">258</tt>  <tt class="py-line">    <tt class="py-docstring">"""</tt> </tt>
<a name="L259"></a><tt class="py-lineno">259</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
<a name="L260"></a><tt class="py-lineno">260</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
<a name="L261"></a><tt class="py-lineno">261</tt>  <tt class="py-line">    <tt class="py-name">buff</tt> <tt class="py-op">=</tt> <tt class="py-name">raw</tt> </tt>
<a name="L262"></a><tt class="py-lineno">262</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">raw</tt> <tt class="py-op">==</tt> <tt class="py-name">False</tt> <tt class="py-op">:</tt> </tt>
<a name="L263"></a><tt class="py-lineno">263</tt>  <tt class="py-line">        <tt class="py-name">buff</tt> <tt class="py-op">=</tt> <tt id="link-155" class="py-name"><a title="bytecode.method2dot" class="py-name" href="#" onclick="return doclink('link-155', 'method2dot', 'link-154');">method2dot</a></tt><tt class="py-op">(</tt> <tt class="py-name">mx</tt> <tt class="py-op">)</tt> </tt>
<a name="L264"></a><tt class="py-lineno">264</tt>  <tt class="py-line"> </tt>
<a name="L265"></a><tt class="py-lineno">265</tt>  <tt class="py-line">    <tt id="link-156" class="py-name" targets="Function bytecode.method2format()=bytecode-module.html#method2format"><a title="bytecode.method2format" class="py-name" href="#" onclick="return doclink('link-156', 'method2format', 'link-156');">method2format</a></tt><tt class="py-op">(</tt> <tt class="py-name">output</tt><tt class="py-op">,</tt> <tt class="py-string">"png"</tt><tt class="py-op">,</tt> <tt class="py-name">mx</tt><tt class="py-op">,</tt> <tt class="py-name">buff</tt> <tt class="py-op">)</tt> </tt>
</div><a name="L266"></a><tt class="py-lineno">266</tt>  <tt class="py-line"> </tt>
<a name="SV"></a><div id="SV-def"><a name="L267"></a><tt class="py-lineno">267</tt> <a class="py-toggle" href="#" id="SV-toggle" onclick="return toggle('SV');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="bytecode.SV-class.html">SV</a> <tt class="py-op">:</tt> </tt>
</div><div id="SV-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SV-expanded"><a name="L268"></a><tt class="py-lineno">268</tt>  <tt class="py-line">    <tt class="py-docstring">"""SV is used to handle more easily a value"""</tt> </tt>
<a name="SV.__init__"></a><div id="SV.__init__-def"><a name="L269"></a><tt class="py-lineno">269</tt> <a class="py-toggle" href="#" id="SV.__init__-toggle" onclick="return toggle('SV.__init__');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SV-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">,</tt> <tt class="py-param">buff</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SV.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SV.__init__-expanded"><a name="L270"></a><tt class="py-lineno">270</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__size</tt> <tt class="py-op">=</tt> <tt id="link-157" class="py-name" targets="Variable dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size=dvm.FILL_ARRAY_DATA_NAMEDTUPLE-class.html#size,Variable dvm.MAP_ITEM_NAMEDTUPLE.size=dvm.MAP_ITEM_NAMEDTUPLE-class.html#size,Variable dvm.PACKED_SWITCH_NAMEDTUPLE.size=dvm.PACKED_SWITCH_NAMEDTUPLE-class.html#size,Variable dvm.SPARSE_SWITCH_NAMEDTUPLE.size=dvm.SPARSE_SWITCH_NAMEDTUPLE-class.html#size"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-157', 'size', 'link-157');">size</a></tt> </tt>
<a name="L271"></a><tt class="py-lineno">271</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt> <tt class="py-op">=</tt> <tt class="py-name">unpack</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__size</tt><tt class="py-op">,</tt> <tt class="py-name">buff</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
</div><a name="L272"></a><tt class="py-lineno">272</tt>  <tt class="py-line"> </tt>
<a name="SV._get"></a><div id="SV._get-def"><a name="L273"></a><tt class="py-lineno">273</tt> <a class="py-toggle" href="#" id="SV._get-toggle" onclick="return toggle('SV._get');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SV-class.html#_get">_get</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SV._get-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SV._get-expanded"><a name="L274"></a><tt class="py-lineno">274</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">pack</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__size</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt><tt class="py-op">)</tt> </tt>
</div><a name="L275"></a><tt class="py-lineno">275</tt>  <tt class="py-line"> </tt>
<a name="SV.__str__"></a><div id="SV.__str__-def"><a name="L276"></a><tt class="py-lineno">276</tt> <a class="py-toggle" href="#" id="SV.__str__-toggle" onclick="return toggle('SV.__str__');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SV-class.html#__str__">__str__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SV.__str__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SV.__str__-expanded"><a name="L277"></a><tt class="py-lineno">277</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-string">"0x%x"</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt> </tt>
</div><a name="L278"></a><tt class="py-lineno">278</tt>  <tt class="py-line"> </tt>
<a name="SV.__int__"></a><div id="SV.__int__-def"><a name="L279"></a><tt class="py-lineno">279</tt> <a class="py-toggle" href="#" id="SV.__int__-toggle" onclick="return toggle('SV.__int__');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SV-class.html#__int__">__int__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SV.__int__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SV.__int__-expanded"><a name="L280"></a><tt class="py-lineno">280</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt> </tt>
</div><a name="L281"></a><tt class="py-lineno">281</tt>  <tt class="py-line"> </tt>
<a name="SV.get_value_buff"></a><div id="SV.get_value_buff-def"><a name="L282"></a><tt class="py-lineno">282</tt> <a class="py-toggle" href="#" id="SV.get_value_buff-toggle" onclick="return toggle('SV.get_value_buff');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SV-class.html#get_value_buff">get_value_buff</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SV.get_value_buff-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SV.get_value_buff-expanded"><a name="L283"></a><tt class="py-lineno">283</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name" targets="Method androguard.BC._get()=androguard.BC-class.html#_get,Method bytecode.SV._get()=bytecode.SV-class.html#_get,Method bytecode.SVs._get()=bytecode.SVs-class.html#_get"><a title="androguard.BC._get
bytecode.SV._get
bytecode.SVs._get" class="py-name" href="#" onclick="return doclink('link-158', '_get', 'link-158');">_get</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
</div><a name="L284"></a><tt class="py-lineno">284</tt>  <tt class="py-line"> </tt>
<a name="SV.get_value"></a><div id="SV.get_value-def"><a name="L285"></a><tt class="py-lineno">285</tt> <a class="py-toggle" href="#" id="SV.get_value-toggle" onclick="return toggle('SV.get_value');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SV-class.html#get_value">get_value</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SV.get_value-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SV.get_value-expanded"><a name="L286"></a><tt class="py-lineno">286</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt> </tt>
</div><a name="L287"></a><tt class="py-lineno">287</tt>  <tt class="py-line"> </tt>
<a name="SV.set_value"></a><div id="SV.set_value-def"><a name="L288"></a><tt class="py-lineno">288</tt> <a class="py-toggle" href="#" id="SV.set_value-toggle" onclick="return toggle('SV.set_value');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SV-class.html#set_value">set_value</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">attr</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SV.set_value-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SV.set_value-expanded"><a name="L289"></a><tt class="py-lineno">289</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt> <tt class="py-op">=</tt> <tt class="py-name">attr</tt> </tt>
</div></div><a name="L290"></a><tt class="py-lineno">290</tt>  <tt class="py-line"> </tt>
<a name="SVs"></a><div id="SVs-def"><a name="L291"></a><tt class="py-lineno">291</tt> <a class="py-toggle" href="#" id="SVs-toggle" onclick="return toggle('SVs');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="bytecode.SVs-class.html">SVs</a> <tt class="py-op">:</tt> </tt>
</div><div id="SVs-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SVs-expanded"><a name="L292"></a><tt class="py-lineno">292</tt>  <tt class="py-line">    <tt class="py-docstring">"""SVs is used to handle more easily a structure of different values"""</tt> </tt>
<a name="SVs.__init__"></a><div id="SVs.__init__-def"><a name="L293"></a><tt class="py-lineno">293</tt> <a class="py-toggle" href="#" id="SVs.__init__-toggle" onclick="return toggle('SVs.__init__');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SVs-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">,</tt> <tt class="py-param">ntuple</tt><tt class="py-op">,</tt> <tt class="py-param">buff</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SVs.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SVs.__init__-expanded"><a name="L294"></a><tt class="py-lineno">294</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__size</tt> <tt class="py-op">=</tt> <tt id="link-159" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-159', 'size', 'link-157');">size</a></tt> </tt>
<a name="L295"></a><tt class="py-lineno">295</tt>  <tt class="py-line"> </tt>
<a name="L296"></a><tt class="py-lineno">296</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt> <tt class="py-op">=</tt> <tt class="py-name">ntuple</tt><tt class="py-op">.</tt><tt id="link-160" class="py-name" targets="Class Method dvm.ANNOTATIONS_DIRECTORY_ITEM_NAMEDTUPLE._make()=dvm.ANNOTATIONS_DIRECTORY_ITEM_NAMEDTUPLE-class.html#_make,Class Method dvm.CLASS_DEF_ITEM_NAMEDTUPLE._make()=dvm.CLASS_DEF_ITEM_NAMEDTUPLE-class.html#_make,Class Method dvm.FIELD_ID_ITEM_NAMEDTUPLE._make()=dvm.FIELD_ID_ITEM_NAMEDTUPLE-class.html#_make,Class Method dvm.FILL_ARRAY_DATA_NAMEDTUPLE._make()=dvm.FILL_ARRAY_DATA_NAMEDTUPLE-class.html#_make,Class Method dvm.HEADER_NAMEDTUPLE._make()=dvm.HEADER_NAMEDTUPLE-class.html#_make,Class Method dvm.MAP_ITEM_NAMEDTUPLE._make()=dvm.MAP_ITEM_NAMEDTUPLE-class.html#_make,Class Method dvm.METHOD_ID_ITEM_NAMEDTUPLE._make()=dvm.METHOD_ID_ITEM_NAMEDTUPLE-class.html#_make,Class Method dvm.PACKED_SWITCH_NAMEDTUPLE._make()=dvm.PACKED_SWITCH_NAMEDTUPLE-class.html#_make,Class Method dvm.PROTO_ID_ITEM_NAMEDTUPLE._make()=dvm.PROTO_ID_ITEM_NAMEDTUPLE-class.html#_make,Class Method dvm.SPARSE_SWITCH_NAMEDTUPLE._make()=dvm.SPARSE_SWITCH_NAMEDTUPLE-class.html#_make,Class Method dvm.TRY_ITEM_NAMEDTUPLE._make()=dvm.TRY_ITEM_NAMEDTUPLE-class.html#_make"><a title="dvm.ANNOTATIONS_DIRECTORY_ITEM_NAMEDTUPLE._make
dvm.CLASS_DEF_ITEM_NAMEDTUPLE._make
dvm.FIELD_ID_ITEM_NAMEDTUPLE._make
dvm.FILL_ARRAY_DATA_NAMEDTUPLE._make
dvm.HEADER_NAMEDTUPLE._make
dvm.MAP_ITEM_NAMEDTUPLE._make
dvm.METHOD_ID_ITEM_NAMEDTUPLE._make
dvm.PACKED_SWITCH_NAMEDTUPLE._make
dvm.PROTO_ID_ITEM_NAMEDTUPLE._make
dvm.SPARSE_SWITCH_NAMEDTUPLE._make
dvm.TRY_ITEM_NAMEDTUPLE._make" class="py-name" href="#" onclick="return doclink('link-160', '_make', 'link-160');">_make</a></tt><tt class="py-op">(</tt> <tt class="py-name">unpack</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__size</tt><tt class="py-op">,</tt> <tt class="py-name">buff</tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
</div><a name="L297"></a><tt class="py-lineno">297</tt>  <tt class="py-line"> </tt>
<a name="SVs._get"></a><div id="SVs._get-def"><a name="L298"></a><tt class="py-lineno">298</tt> <a class="py-toggle" href="#" id="SVs._get-toggle" onclick="return toggle('SVs._get');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SVs-class.html#_get">_get</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SVs._get-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SVs._get-expanded"><a name="L299"></a><tt class="py-lineno">299</tt>  <tt class="py-line">        <tt class="py-name">l</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
<a name="L300"></a><tt class="py-lineno">300</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt id="link-161" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-161', 'i', 'link-24');">i</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name" targets="Variable dvm.ANNOTATIONS_DIRECTORY_ITEM_NAMEDTUPLE._fields=dvm.ANNOTATIONS_DIRECTORY_ITEM_NAMEDTUPLE-class.html#_fields,Variable dvm.CLASS_DEF_ITEM_NAMEDTUPLE._fields=dvm.CLASS_DEF_ITEM_NAMEDTUPLE-class.html#_fields,Variable dvm.FIELD_ID_ITEM_NAMEDTUPLE._fields=dvm.FIELD_ID_ITEM_NAMEDTUPLE-class.html#_fields,Variable dvm.FILL_ARRAY_DATA_NAMEDTUPLE._fields=dvm.FILL_ARRAY_DATA_NAMEDTUPLE-class.html#_fields,Variable dvm.HEADER_NAMEDTUPLE._fields=dvm.HEADER_NAMEDTUPLE-class.html#_fields,Variable dvm.MAP_ITEM_NAMEDTUPLE._fields=dvm.MAP_ITEM_NAMEDTUPLE-class.html#_fields,Variable dvm.METHOD_ID_ITEM_NAMEDTUPLE._fields=dvm.METHOD_ID_ITEM_NAMEDTUPLE-class.html#_fields,Variable dvm.PACKED_SWITCH_NAMEDTUPLE._fields=dvm.PACKED_SWITCH_NAMEDTUPLE-class.html#_fields,Variable dvm.PROTO_ID_ITEM_NAMEDTUPLE._fields=dvm.PROTO_ID_ITEM_NAMEDTUPLE-class.html#_fields,Variable dvm.SPARSE_SWITCH_NAMEDTUPLE._fields=dvm.SPARSE_SWITCH_NAMEDTUPLE-class.html#_fields,Variable dvm.TRY_ITEM_NAMEDTUPLE._fields=dvm.TRY_ITEM_NAMEDTUPLE-class.html#_fields"><a title="dvm.ANNOTATIONS_DIRECTORY_ITEM_NAMEDTUPLE._fields
dvm.CLASS_DEF_ITEM_NAMEDTUPLE._fields
dvm.FIELD_ID_ITEM_NAMEDTUPLE._fields
dvm.FILL_ARRAY_DATA_NAMEDTUPLE._fields
dvm.HEADER_NAMEDTUPLE._fields
dvm.MAP_ITEM_NAMEDTUPLE._fields
dvm.METHOD_ID_ITEM_NAMEDTUPLE._fields
dvm.PACKED_SWITCH_NAMEDTUPLE._fields
dvm.PROTO_ID_ITEM_NAMEDTUPLE._fields
dvm.SPARSE_SWITCH_NAMEDTUPLE._fields
dvm.TRY_ITEM_NAMEDTUPLE._fields" class="py-name" href="#" onclick="return doclink('link-162', '_fields', 'link-162');">_fields</a></tt> <tt class="py-op">:</tt> </tt>
<a name="L301"></a><tt class="py-lineno">301</tt>  <tt class="py-line">            <tt class="py-name">l</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt><tt class="py-op">,</tt> <tt id="link-163" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-163', 'i', 'link-24');">i</a></tt> <tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
<a name="L302"></a><tt class="py-lineno">302</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">pack</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__size</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-name">l</tt><tt class="py-op">)</tt> </tt>
</div><a name="L303"></a><tt class="py-lineno">303</tt>  <tt class="py-line"> </tt>
<a name="SVs._export"></a><div id="SVs._export-def"><a name="L304"></a><tt class="py-lineno">304</tt> <a class="py-toggle" href="#" id="SVs._export-toggle" onclick="return toggle('SVs._export');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SVs-class.html#_export">_export</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SVs._export-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SVs._export-expanded"><a name="L305"></a><tt class="py-lineno">305</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-op">[</tt> <tt class="py-name">x</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt><tt class="py-op">.</tt><tt id="link-164" class="py-name"><a title="dvm.ANNOTATIONS_DIRECTORY_ITEM_NAMEDTUPLE._fields
dvm.CLASS_DEF_ITEM_NAMEDTUPLE._fields
dvm.FIELD_ID_ITEM_NAMEDTUPLE._fields
dvm.FILL_ARRAY_DATA_NAMEDTUPLE._fields
dvm.HEADER_NAMEDTUPLE._fields
dvm.MAP_ITEM_NAMEDTUPLE._fields
dvm.METHOD_ID_ITEM_NAMEDTUPLE._fields
dvm.PACKED_SWITCH_NAMEDTUPLE._fields
dvm.PROTO_ID_ITEM_NAMEDTUPLE._fields
dvm.SPARSE_SWITCH_NAMEDTUPLE._fields
dvm.TRY_ITEM_NAMEDTUPLE._fields" class="py-name" href="#" onclick="return doclink('link-164', '_fields', 'link-162');">_fields</a></tt> <tt class="py-op">]</tt> </tt>
</div><a name="L306"></a><tt class="py-lineno">306</tt>  <tt class="py-line"> </tt>
<a name="SVs.get_value_buff"></a><div id="SVs.get_value_buff-def"><a name="L307"></a><tt class="py-lineno">307</tt> <a class="py-toggle" href="#" id="SVs.get_value_buff-toggle" onclick="return toggle('SVs.get_value_buff');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SVs-class.html#get_value_buff">get_value_buff</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SVs.get_value_buff-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SVs.get_value_buff-expanded"><a name="L308"></a><tt class="py-lineno">308</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="androguard.BC._get
bytecode.SV._get
bytecode.SVs._get" class="py-name" href="#" onclick="return doclink('link-165', '_get', 'link-158');">_get</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
</div><a name="L309"></a><tt class="py-lineno">309</tt>  <tt class="py-line"> </tt>
<a name="SVs.get_value"></a><div id="SVs.get_value-def"><a name="L310"></a><tt class="py-lineno">310</tt> <a class="py-toggle" href="#" id="SVs.get_value-toggle" onclick="return toggle('SVs.get_value');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SVs-class.html#get_value">get_value</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SVs.get_value-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SVs.get_value-expanded"><a name="L311"></a><tt class="py-lineno">311</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt> </tt>
</div><a name="L312"></a><tt class="py-lineno">312</tt>  <tt class="py-line"> </tt>
<a name="SVs.set_value"></a><div id="SVs.set_value-def"><a name="L313"></a><tt class="py-lineno">313</tt> <a class="py-toggle" href="#" id="SVs.set_value-toggle" onclick="return toggle('SVs.set_value');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SVs-class.html#set_value">set_value</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">attr</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SVs.set_value-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SVs.set_value-expanded"><a name="L314"></a><tt class="py-lineno">314</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name" targets="Method dvm.ANNOTATIONS_DIRECTORY_ITEM_NAMEDTUPLE._replace()=dvm.ANNOTATIONS_DIRECTORY_ITEM_NAMEDTUPLE-class.html#_replace,Method dvm.CLASS_DEF_ITEM_NAMEDTUPLE._replace()=dvm.CLASS_DEF_ITEM_NAMEDTUPLE-class.html#_replace,Method dvm.FIELD_ID_ITEM_NAMEDTUPLE._replace()=dvm.FIELD_ID_ITEM_NAMEDTUPLE-class.html#_replace,Method dvm.FILL_ARRAY_DATA_NAMEDTUPLE._replace()=dvm.FILL_ARRAY_DATA_NAMEDTUPLE-class.html#_replace,Method dvm.HEADER_NAMEDTUPLE._replace()=dvm.HEADER_NAMEDTUPLE-class.html#_replace,Method dvm.MAP_ITEM_NAMEDTUPLE._replace()=dvm.MAP_ITEM_NAMEDTUPLE-class.html#_replace,Method dvm.METHOD_ID_ITEM_NAMEDTUPLE._replace()=dvm.METHOD_ID_ITEM_NAMEDTUPLE-class.html#_replace,Method dvm.PACKED_SWITCH_NAMEDTUPLE._replace()=dvm.PACKED_SWITCH_NAMEDTUPLE-class.html#_replace,Method dvm.PROTO_ID_ITEM_NAMEDTUPLE._replace()=dvm.PROTO_ID_ITEM_NAMEDTUPLE-class.html#_replace,Method dvm.SPARSE_SWITCH_NAMEDTUPLE._replace()=dvm.SPARSE_SWITCH_NAMEDTUPLE-class.html#_replace,Method dvm.TRY_ITEM_NAMEDTUPLE._replace()=dvm.TRY_ITEM_NAMEDTUPLE-class.html#_replace"><a title="dvm.ANNOTATIONS_DIRECTORY_ITEM_NAMEDTUPLE._replace
dvm.CLASS_DEF_ITEM_NAMEDTUPLE._replace
dvm.FIELD_ID_ITEM_NAMEDTUPLE._replace
dvm.FILL_ARRAY_DATA_NAMEDTUPLE._replace
dvm.HEADER_NAMEDTUPLE._replace
dvm.MAP_ITEM_NAMEDTUPLE._replace
dvm.METHOD_ID_ITEM_NAMEDTUPLE._replace
dvm.PACKED_SWITCH_NAMEDTUPLE._replace
dvm.PROTO_ID_ITEM_NAMEDTUPLE._replace
dvm.SPARSE_SWITCH_NAMEDTUPLE._replace
dvm.TRY_ITEM_NAMEDTUPLE._replace" class="py-name" href="#" onclick="return doclink('link-166', '_replace', 'link-166');">_replace</a></tt><tt class="py-op">(</tt> <tt class="py-op">**</tt><tt class="py-name">attr</tt> <tt class="py-op">)</tt> </tt>
</div><a name="L315"></a><tt class="py-lineno">315</tt>  <tt class="py-line"> </tt>
<a name="SVs.__str__"></a><div id="SVs.__str__-def"><a name="L316"></a><tt class="py-lineno">316</tt> <a class="py-toggle" href="#" id="SVs.__str__-toggle" onclick="return toggle('SVs.__str__');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.SVs-class.html#__str__">__str__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="SVs.__str__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SVs.__str__-expanded"><a name="L317"></a><tt class="py-lineno">317</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__value</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="bytecode.SV.__str__
bytecode.SVs.__str__" class="py-name" href="#" onclick="return doclink('link-167', '__str__', 'link-15');">__str__</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
</div></div><a name="L318"></a><tt class="py-lineno">318</tt>  <tt class="py-line"> </tt>
<a name="MethodBC"></a><div id="MethodBC-def"><a name="L319"></a><tt class="py-lineno">319</tt> <a class="py-toggle" href="#" id="MethodBC-toggle" onclick="return toggle('MethodBC');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="bytecode.MethodBC-class.html">MethodBC</a><tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="MethodBC-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="MethodBC-expanded"><a name="MethodBC.show"></a><div id="MethodBC.show-def"><a name="L320"></a><tt class="py-lineno">320</tt> <a class="py-toggle" href="#" id="MethodBC.show-toggle" onclick="return toggle('MethodBC.show');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.MethodBC-class.html#show">show</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">value</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="MethodBC.show-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="MethodBC.show-expanded"><a name="L321"></a><tt class="py-lineno">321</tt>  <tt class="py-line">        <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-string">"show_"</tt> <tt class="py-op">+</tt> <tt class="py-name">value</tt><tt class="py-op">)</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
</div></div><a name="L322"></a><tt class="py-lineno">322</tt>  <tt class="py-line"> </tt>
<a name="BuffHandle"></a><div id="BuffHandle-def"><a name="L323"></a><tt class="py-lineno">323</tt> <a class="py-toggle" href="#" id="BuffHandle-toggle" onclick="return toggle('BuffHandle');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="bytecode.BuffHandle-class.html">BuffHandle</a> <tt class="py-op">:</tt> </tt>
</div><div id="BuffHandle-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="BuffHandle-expanded"><a name="BuffHandle.__init__"></a><div id="BuffHandle.__init__-def"><a name="L324"></a><tt class="py-lineno">324</tt> <a class="py-toggle" href="#" id="BuffHandle.__init__-toggle" onclick="return toggle('BuffHandle.__init__');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.BuffHandle-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">buff</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="BuffHandle.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BuffHandle.__init__-expanded"><a name="L325"></a><tt class="py-lineno">325</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__buff</tt> <tt class="py-op">=</tt> <tt class="py-name">buff</tt> </tt>
<a name="L326"></a><tt class="py-lineno">326</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
</div><a name="L327"></a><tt class="py-lineno">327</tt>  <tt class="py-line"> </tt>
<a name="BuffHandle.read_b"></a><div id="BuffHandle.read_b-def"><a name="L328"></a><tt class="py-lineno">328</tt> <a class="py-toggle" href="#" id="BuffHandle.read_b-toggle" onclick="return toggle('BuffHandle.read_b');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.BuffHandle-class.html#read_b">read_b</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="BuffHandle.read_b-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BuffHandle.read_b-expanded"><a name="L329"></a><tt class="py-lineno">329</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__buff</tt><tt class="py-op">[</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">:</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">+</tt> <tt id="link-168" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-168', 'size', 'link-157');">size</a></tt> <tt class="py-op">]</tt> </tt>
</div><a name="L330"></a><tt class="py-lineno">330</tt>  <tt class="py-line"> </tt>
<a name="BuffHandle.read"></a><div id="BuffHandle.read-def"><a name="L331"></a><tt class="py-lineno">331</tt> <a class="py-toggle" href="#" id="BuffHandle.read-toggle" onclick="return toggle('BuffHandle.read');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.BuffHandle-class.html#read">read</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="BuffHandle.read-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BuffHandle.read-expanded"><a name="L332"></a><tt class="py-lineno">332</tt>  <tt class="py-line">        <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt id="link-169" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-169', 'size', 'link-157');">size</a></tt><tt class="py-op">,</tt> <tt id="link-170" class="py-name"><a title="bytecode.SV" class="py-name" href="#" onclick="return doclink('link-170', 'SV', 'link-11');">SV</a></tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
<a name="L333"></a><tt class="py-lineno">333</tt>  <tt class="py-line">            <tt id="link-171" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-171', 'size', 'link-157');">size</a></tt> <tt class="py-op">=</tt> <tt id="link-172" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-172', 'size', 'link-157');">size</a></tt><tt class="py-op">.</tt><tt class="py-name">value</tt> </tt>
<a name="L334"></a><tt class="py-lineno">334</tt>  <tt class="py-line"> </tt>
<a name="L335"></a><tt class="py-lineno">335</tt>  <tt class="py-line">        <tt class="py-name">buff</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__buff</tt><tt class="py-op">[</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">:</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">+</tt> <tt id="link-173" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-173', 'size', 'link-157');">size</a></tt> <tt class="py-op">]</tt> </tt>
<a name="L336"></a><tt class="py-lineno">336</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">+=</tt> <tt id="link-174" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-174', 'size', 'link-157');">size</a></tt> </tt>
<a name="L337"></a><tt class="py-lineno">337</tt>  <tt class="py-line"> </tt>
<a name="L338"></a><tt class="py-lineno">338</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">buff</tt> </tt>
</div><a name="L339"></a><tt class="py-lineno">339</tt>  <tt class="py-line"> </tt>
<a name="BuffHandle.end"></a><div id="BuffHandle.end-def"><a name="L340"></a><tt class="py-lineno">340</tt> <a class="py-toggle" href="#" id="BuffHandle.end-toggle" onclick="return toggle('BuffHandle.end');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.BuffHandle-class.html#end">end</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="BuffHandle.end-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BuffHandle.end-expanded"><a name="L341"></a><tt class="py-lineno">341</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__buff</tt><tt class="py-op">)</tt> </tt>
</div></div><a name="L342"></a><tt class="py-lineno">342</tt>  <tt class="py-line"> </tt>
<a name="Buff"></a><div id="Buff-def"><a name="L343"></a><tt class="py-lineno">343</tt> <a class="py-toggle" href="#" id="Buff-toggle" onclick="return toggle('Buff');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="bytecode.Buff-class.html">Buff</a> <tt class="py-op">:</tt> </tt>
</div><div id="Buff-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="Buff-expanded"><a name="Buff.__init__"></a><div id="Buff.__init__-def"><a name="L344"></a><tt class="py-lineno">344</tt> <a class="py-toggle" href="#" id="Buff.__init__-toggle" onclick="return toggle('Buff.__init__');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode.Buff-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">offset</tt><tt class="py-op">,</tt> <tt class="py-param">buff</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="Buff.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Buff.__init__-expanded"><a name="L345"></a><tt class="py-lineno">345</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name" targets="Variable dvm.MAP_ITEM_NAMEDTUPLE.offset=dvm.MAP_ITEM_NAMEDTUPLE-class.html#offset"><a title="dvm.MAP_ITEM_NAMEDTUPLE.offset" class="py-name" href="#" onclick="return doclink('link-175', 'offset', 'link-175');">offset</a></tt> <tt class="py-op">=</tt> <tt id="link-176" class="py-name"><a title="dvm.MAP_ITEM_NAMEDTUPLE.offset" class="py-name" href="#" onclick="return doclink('link-176', 'offset', 'link-175');">offset</a></tt> </tt>
<a name="L346"></a><tt class="py-lineno">346</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">buff</tt> <tt class="py-op">=</tt> <tt class="py-name">buff</tt> </tt>
<a name="L347"></a><tt class="py-lineno">347</tt>  <tt class="py-line"> </tt>
<a name="L348"></a><tt class="py-lineno">348</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-177', 'size', 'link-157');">size</a></tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">buff</tt><tt class="py-op">)</tt> </tt>
</div></div><a name="L349"></a><tt class="py-lineno">349</tt>  <tt class="py-line"> </tt>
<a name="_Bytecode"></a><div id="_Bytecode-def"><a name="L350"></a><tt class="py-lineno">350</tt> <a class="py-toggle" href="#" id="_Bytecode-toggle" onclick="return toggle('_Bytecode');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="bytecode._Bytecode-class.html">_Bytecode</a><tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="_Bytecode-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_Bytecode-expanded"><a name="_Bytecode.__init__"></a><div id="_Bytecode.__init__-def"><a name="L351"></a><tt class="py-lineno">351</tt> <a class="py-toggle" href="#" id="_Bytecode.__init__-toggle" onclick="return toggle('_Bytecode.__init__');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode._Bytecode-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">buff</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="_Bytecode.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="_Bytecode.__init__-expanded"><a name="L352"></a><tt class="py-lineno">352</tt>  <tt class="py-line">        <tt class="py-keyword">try</tt> <tt class="py-op">:</tt> </tt>
<a name="L353"></a><tt class="py-lineno">353</tt>  <tt class="py-line">            <tt class="py-keyword">pass</tt> </tt>
<a name="L354"></a><tt class="py-lineno">354</tt>  <tt class="py-line">            <tt class="py-comment">#import psyco</tt> </tt>
<a name="L355"></a><tt class="py-lineno">355</tt>  <tt class="py-line">            <tt class="py-comment">#psyco.full()</tt> </tt>
<a name="L356"></a><tt class="py-lineno">356</tt>  <tt class="py-line">        <tt class="py-keyword">except</tt> <tt class="py-name">ImportError</tt> <tt class="py-op">:</tt> </tt>
<a name="L357"></a><tt class="py-lineno">357</tt>  <tt class="py-line">            <tt id="link-178" class="py-name"><a title="error.warning" class="py-name" href="#" onclick="return doclink('link-178', 'warning', 'link-3');">warning</a></tt><tt class="py-op">(</tt><tt class="py-string">"module psyco not found"</tt><tt class="py-op">)</tt> </tt>
<a name="L358"></a><tt class="py-lineno">358</tt>  <tt class="py-line"> </tt>
<a name="L359"></a><tt class="py-lineno">359</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__buff</tt> <tt class="py-op">=</tt> <tt class="py-name">buff</tt> </tt>
<a name="L360"></a><tt class="py-lineno">360</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
</div><a name="L361"></a><tt class="py-lineno">361</tt>  <tt class="py-line"> </tt>
<a name="L362"></a><tt class="py-lineno">362</tt>  <tt class="py-line"> </tt>
<a name="_Bytecode.read"></a><div id="_Bytecode.read-def"><a name="L363"></a><tt class="py-lineno">363</tt> <a class="py-toggle" href="#" id="_Bytecode.read-toggle" onclick="return toggle('_Bytecode.read');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode._Bytecode-class.html#read">read</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="_Bytecode.read-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="_Bytecode.read-expanded"><a name="L364"></a><tt class="py-lineno">364</tt>  <tt class="py-line">        <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt id="link-179" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-179', 'size', 'link-157');">size</a></tt><tt class="py-op">,</tt> <tt id="link-180" class="py-name"><a title="bytecode.SV" class="py-name" href="#" onclick="return doclink('link-180', 'SV', 'link-11');">SV</a></tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
<a name="L365"></a><tt class="py-lineno">365</tt>  <tt class="py-line">            <tt id="link-181" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-181', 'size', 'link-157');">size</a></tt> <tt class="py-op">=</tt> <tt id="link-182" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-182', 'size', 'link-157');">size</a></tt><tt class="py-op">.</tt><tt class="py-name">value</tt> </tt>
<a name="L366"></a><tt class="py-lineno">366</tt>  <tt class="py-line"> </tt>
<a name="L367"></a><tt class="py-lineno">367</tt>  <tt class="py-line">        <tt class="py-name">buff</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__buff</tt><tt class="py-op">[</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">:</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">+</tt> <tt id="link-183" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-183', 'size', 'link-157');">size</a></tt> <tt class="py-op">]</tt> </tt>
<a name="L368"></a><tt class="py-lineno">368</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">+=</tt> <tt id="link-184" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-184', 'size', 'link-157');">size</a></tt> </tt>
<a name="L369"></a><tt class="py-lineno">369</tt>  <tt class="py-line"> </tt>
<a name="L370"></a><tt class="py-lineno">370</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">buff</tt> </tt>
</div><a name="L371"></a><tt class="py-lineno">371</tt>  <tt class="py-line"> </tt>
<a name="_Bytecode.readat"></a><div id="_Bytecode.readat-def"><a name="L372"></a><tt class="py-lineno">372</tt> <a class="py-toggle" href="#" id="_Bytecode.readat-toggle" onclick="return toggle('_Bytecode.readat');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode._Bytecode-class.html#readat">readat</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">off</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="_Bytecode.readat-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="_Bytecode.readat-expanded"><a name="L373"></a><tt class="py-lineno">373</tt>  <tt class="py-line">        <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">off</tt><tt class="py-op">,</tt> <tt id="link-185" class="py-name"><a title="bytecode.SV" class="py-name" href="#" onclick="return doclink('link-185', 'SV', 'link-11');">SV</a></tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
<a name="L374"></a><tt class="py-lineno">374</tt>  <tt class="py-line">            <tt class="py-name">off</tt> <tt class="py-op">=</tt> <tt class="py-name">off</tt><tt class="py-op">.</tt><tt class="py-name">value</tt> </tt>
<a name="L375"></a><tt class="py-lineno">375</tt>  <tt class="py-line"> </tt>
<a name="L376"></a><tt class="py-lineno">376</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__buff</tt><tt class="py-op">[</tt> <tt class="py-name">off</tt> <tt class="py-op">:</tt> <tt class="py-op">]</tt> </tt>
</div><a name="L377"></a><tt class="py-lineno">377</tt>  <tt class="py-line"> </tt>
<a name="_Bytecode.read_b"></a><div id="_Bytecode.read_b-def"><a name="L378"></a><tt class="py-lineno">378</tt> <a class="py-toggle" href="#" id="_Bytecode.read_b-toggle" onclick="return toggle('_Bytecode.read_b');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode._Bytecode-class.html#read_b">read_b</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="_Bytecode.read_b-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="_Bytecode.read_b-expanded"><a name="L379"></a><tt class="py-lineno">379</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__buff</tt><tt class="py-op">[</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">:</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">+</tt> <tt id="link-186" class="py-name"><a title="dvm.FILL_ARRAY_DATA_NAMEDTUPLE.size
dvm.MAP_ITEM_NAMEDTUPLE.size
dvm.PACKED_SWITCH_NAMEDTUPLE.size
dvm.SPARSE_SWITCH_NAMEDTUPLE.size" class="py-name" href="#" onclick="return doclink('link-186', 'size', 'link-157');">size</a></tt> <tt class="py-op">]</tt> </tt>
</div><a name="L380"></a><tt class="py-lineno">380</tt>  <tt class="py-line"> </tt>
<a name="_Bytecode.set_idx"></a><div id="_Bytecode.set_idx-def"><a name="L381"></a><tt class="py-lineno">381</tt> <a class="py-toggle" href="#" id="_Bytecode.set_idx-toggle" onclick="return toggle('_Bytecode.set_idx');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode._Bytecode-class.html#set_idx">set_idx</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">idx</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="_Bytecode.set_idx-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="_Bytecode.set_idx-expanded"><a name="L382"></a><tt class="py-lineno">382</tt>  <tt class="py-line">        <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">idx</tt><tt class="py-op">,</tt> <tt id="link-187" class="py-name"><a title="bytecode.SV" class="py-name" href="#" onclick="return doclink('link-187', 'SV', 'link-11');">SV</a></tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
<a name="L383"></a><tt class="py-lineno">383</tt>  <tt class="py-line">            <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">=</tt> <tt class="py-name">idx</tt><tt class="py-op">.</tt><tt class="py-name">value</tt> </tt>
<a name="L384"></a><tt class="py-lineno">384</tt>  <tt class="py-line">        <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
<a name="L385"></a><tt class="py-lineno">385</tt>  <tt class="py-line">            <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">=</tt> <tt class="py-name">idx</tt> </tt>
</div><a name="L386"></a><tt class="py-lineno">386</tt>  <tt class="py-line"> </tt>
<a name="_Bytecode.get_idx"></a><div id="_Bytecode.get_idx-def"><a name="L387"></a><tt class="py-lineno">387</tt> <a class="py-toggle" href="#" id="_Bytecode.get_idx-toggle" onclick="return toggle('_Bytecode.get_idx');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode._Bytecode-class.html#get_idx">get_idx</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="_Bytecode.get_idx-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="_Bytecode.get_idx-expanded"><a name="L388"></a><tt class="py-lineno">388</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> </tt>
</div><a name="L389"></a><tt class="py-lineno">389</tt>  <tt class="py-line"> </tt>
<a name="_Bytecode.add_idx"></a><div id="_Bytecode.add_idx-def"><a name="L390"></a><tt class="py-lineno">390</tt> <a class="py-toggle" href="#" id="_Bytecode.add_idx-toggle" onclick="return toggle('_Bytecode.add_idx');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode._Bytecode-class.html#add_idx">add_idx</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">idx</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="_Bytecode.add_idx-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="_Bytecode.add_idx-expanded"><a name="L391"></a><tt class="py-lineno">391</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__idx</tt> <tt class="py-op">+=</tt> <tt class="py-name">idx</tt> </tt>
</div><a name="L392"></a><tt class="py-lineno">392</tt>  <tt class="py-line"> </tt>
<a name="_Bytecode.register"></a><div id="_Bytecode.register-def"><a name="L393"></a><tt class="py-lineno">393</tt> <a class="py-toggle" href="#" id="_Bytecode.register-toggle" onclick="return toggle('_Bytecode.register');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode._Bytecode-class.html#register">register</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">type_register</tt><tt class="py-op">,</tt> <tt class="py-param">fct</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="_Bytecode.register-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="_Bytecode.register-expanded"><a name="L394"></a><tt class="py-lineno">394</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__registers</tt><tt class="py-op">[</tt> <tt class="py-name">type_register</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">fct</tt> <tt class="py-op">)</tt> </tt>
</div><a name="L395"></a><tt class="py-lineno">395</tt>  <tt class="py-line"> </tt>
<a name="_Bytecode.get_buff"></a><div id="_Bytecode.get_buff-def"><a name="L396"></a><tt class="py-lineno">396</tt> <a class="py-toggle" href="#" id="_Bytecode.get_buff-toggle" onclick="return toggle('_Bytecode.get_buff');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode._Bytecode-class.html#get_buff">get_buff</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="_Bytecode.get_buff-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="_Bytecode.get_buff-expanded"><a name="L397"></a><tt class="py-lineno">397</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__buff</tt> </tt>
</div><a name="L398"></a><tt class="py-lineno">398</tt>  <tt class="py-line"> </tt>
<a name="_Bytecode.length_buff"></a><div id="_Bytecode.length_buff-def"><a name="L399"></a><tt class="py-lineno">399</tt> <a class="py-toggle" href="#" id="_Bytecode.length_buff-toggle" onclick="return toggle('_Bytecode.length_buff');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode._Bytecode-class.html#length_buff">length_buff</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="_Bytecode.length_buff-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="_Bytecode.length_buff-expanded"><a name="L400"></a><tt class="py-lineno">400</tt>  <tt class="py-line">        <tt class="py-keyword">return</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__buff</tt> <tt class="py-op">)</tt> </tt>
</div><a name="L401"></a><tt class="py-lineno">401</tt>  <tt class="py-line"> </tt>
<a name="_Bytecode.save"></a><div id="_Bytecode.save-def"><a name="L402"></a><tt class="py-lineno">402</tt> <a class="py-toggle" href="#" id="_Bytecode.save-toggle" onclick="return toggle('_Bytecode.save');">-</a><tt class="py-line">    <tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode._Bytecode-class.html#save">save</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="_Bytecode.save-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="_Bytecode.save-expanded"><a name="L403"></a><tt class="py-lineno">403</tt>  <tt class="py-line">        <tt class="py-name">fd</tt> <tt class="py-op">=</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-string">"w"</tt><tt class="py-op">)</tt> </tt>
<a name="L404"></a><tt class="py-lineno">404</tt>  <tt class="py-line">        <tt class="py-name">buff</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_save</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
<a name="L405"></a><tt class="py-lineno">405</tt>  <tt class="py-line">        <tt class="py-name">fd</tt><tt class="py-op">.</tt><tt class="py-name">write</tt><tt class="py-op">(</tt> <tt class="py-name">buff</tt> <tt class="py-op">)</tt> </tt>
<a name="L406"></a><tt class="py-lineno">406</tt>  <tt class="py-line">        <tt class="py-name">fd</tt><tt class="py-op">.</tt><tt class="py-name">close</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
</div></div><a name="L407"></a><tt class="py-lineno">407</tt>  <tt class="py-line"> </tt>
<a name="FormatClassToJava"></a><div id="FormatClassToJava-def"><a name="L408"></a><tt class="py-lineno">408</tt> <a class="py-toggle" href="#" id="FormatClassToJava-toggle" onclick="return toggle('FormatClassToJava');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#FormatClassToJava">FormatClassToJava</a><tt class="py-op">(</tt><tt class="py-param">input</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="FormatClassToJava-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="FormatClassToJava-expanded"><a name="L409"></a><tt class="py-lineno">409</tt>  <tt class="py-line">    <tt class="py-docstring">"""</tt> </tt>
<a name="L410"></a><tt class="py-lineno">410</tt>  <tt class="py-line"><tt class="py-docstring">       Transofmr a typical xml format class into java format</tt> </tt>
<a name="L411"></a><tt class="py-lineno">411</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
<a name="L412"></a><tt class="py-lineno">412</tt>  <tt class="py-line"><tt class="py-docstring">       @param input : the input class name</tt> </tt>
<a name="L413"></a><tt class="py-lineno">413</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
<a name="L414"></a><tt class="py-lineno">414</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-string">"L"</tt> <tt class="py-op">+</tt> <tt class="py-name">input</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"."</tt><tt class="py-op">,</tt> <tt class="py-string">"/"</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">";"</tt> </tt>
</div><a name="L415"></a><tt class="py-lineno">415</tt>  <tt class="py-line"> </tt>
<a name="FormatClassToPython"></a><div id="FormatClassToPython-def"><a name="L416"></a><tt class="py-lineno">416</tt> <a class="py-toggle" href="#" id="FormatClassToPython-toggle" onclick="return toggle('FormatClassToPython');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#FormatClassToPython">FormatClassToPython</a><tt class="py-op">(</tt><tt class="py-param">input</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="FormatClassToPython-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="FormatClassToPython-expanded"><a name="L417"></a><tt class="py-lineno">417</tt>  <tt class="py-line">    <tt id="link-188" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-188', 'i', 'link-24');">i</a></tt> <tt class="py-op">=</tt> <tt class="py-name">input</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
<a name="L418"></a><tt class="py-lineno">418</tt>  <tt class="py-line">    <tt id="link-189" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-189', 'i', 'link-24');">i</a></tt> <tt class="py-op">=</tt> <tt id="link-190" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-190', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"/"</tt><tt class="py-op">,</tt> <tt class="py-string">"_"</tt><tt class="py-op">)</tt> </tt>
<a name="L419"></a><tt class="py-lineno">419</tt>  <tt class="py-line">    <tt id="link-191" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-191', 'i', 'link-24');">i</a></tt> <tt class="py-op">=</tt> <tt id="link-192" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-192', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"$"</tt><tt class="py-op">,</tt> <tt class="py-string">"_"</tt><tt class="py-op">)</tt> </tt>
<a name="L420"></a><tt class="py-lineno">420</tt>  <tt class="py-line"> </tt>
<a name="L421"></a><tt class="py-lineno">421</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt id="link-193" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-193', 'i', 'link-24');">i</a></tt> </tt>
</div><a name="L422"></a><tt class="py-lineno">422</tt>  <tt class="py-line"> </tt>
<a name="FormatNameToPython"></a><div id="FormatNameToPython-def"><a name="L423"></a><tt class="py-lineno">423</tt> <a class="py-toggle" href="#" id="FormatNameToPython-toggle" onclick="return toggle('FormatNameToPython');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#FormatNameToPython">FormatNameToPython</a><tt class="py-op">(</tt><tt class="py-param">input</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="FormatNameToPython-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="FormatNameToPython-expanded"><a name="L424"></a><tt class="py-lineno">424</tt>  <tt class="py-line">    <tt id="link-194" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-194', 'i', 'link-24');">i</a></tt> <tt class="py-op">=</tt> <tt class="py-name">input</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"&lt;"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
<a name="L425"></a><tt class="py-lineno">425</tt>  <tt class="py-line">    <tt id="link-195" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-195', 'i', 'link-24');">i</a></tt> <tt class="py-op">=</tt> <tt id="link-196" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-196', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"&gt;"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
<a name="L426"></a><tt class="py-lineno">426</tt>  <tt class="py-line">    <tt id="link-197" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-197', 'i', 'link-24');">i</a></tt> <tt class="py-op">=</tt> <tt id="link-198" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-198', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"$"</tt><tt class="py-op">,</tt> <tt class="py-string">"_"</tt><tt class="py-op">)</tt> </tt>
<a name="L427"></a><tt class="py-lineno">427</tt>  <tt class="py-line"> </tt>
<a name="L428"></a><tt class="py-lineno">428</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt id="link-199" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-199', 'i', 'link-24');">i</a></tt> </tt>
</div><a name="L429"></a><tt class="py-lineno">429</tt>  <tt class="py-line"> </tt>
<a name="FormatDescriptorToPython"></a><div id="FormatDescriptorToPython-def"><a name="L430"></a><tt class="py-lineno">430</tt> <a class="py-toggle" href="#" id="FormatDescriptorToPython-toggle" onclick="return toggle('FormatDescriptorToPython');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#FormatDescriptorToPython">FormatDescriptorToPython</a><tt class="py-op">(</tt><tt class="py-param">input</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="FormatDescriptorToPython-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="FormatDescriptorToPython-expanded"><a name="L431"></a><tt class="py-lineno">431</tt>  <tt class="py-line">    <tt id="link-200" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-200', 'i', 'link-24');">i</a></tt> <tt class="py-op">=</tt> <tt class="py-name">input</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"/"</tt><tt class="py-op">,</tt> <tt class="py-string">"_"</tt><tt class="py-op">)</tt> </tt>
<a name="L432"></a><tt class="py-lineno">432</tt>  <tt class="py-line">    <tt id="link-201" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-201', 'i', 'link-24');">i</a></tt> <tt class="py-op">=</tt> <tt id="link-202" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-202', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">";"</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
<a name="L433"></a><tt class="py-lineno">433</tt>  <tt class="py-line">    <tt id="link-203" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-203', 'i', 'link-24');">i</a></tt> <tt class="py-op">=</tt> <tt id="link-204" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-204', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"["</tt><tt class="py-op">,</tt> <tt class="py-string">"_"</tt><tt class="py-op">)</tt> </tt>
<a name="L434"></a><tt class="py-lineno">434</tt>  <tt class="py-line">    <tt id="link-205" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-205', 'i', 'link-24');">i</a></tt> <tt class="py-op">=</tt> <tt id="link-206" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-206', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"("</tt><tt class="py-op">,</tt> <tt class="py-string">"_"</tt><tt class="py-op">)</tt> </tt>
<a name="L435"></a><tt class="py-lineno">435</tt>  <tt class="py-line">    <tt id="link-207" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-207', 'i', 'link-24');">i</a></tt> <tt class="py-op">=</tt> <tt id="link-208" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-208', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">")"</tt><tt class="py-op">,</tt> <tt class="py-string">"__"</tt><tt class="py-op">)</tt> </tt>
<a name="L436"></a><tt class="py-lineno">436</tt>  <tt class="py-line">    <tt id="link-209" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-209', 'i', 'link-24');">i</a></tt> <tt class="py-op">=</tt> <tt id="link-210" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-210', 'i', 'link-24');">i</a></tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">)</tt> </tt>
<a name="L437"></a><tt class="py-lineno">437</tt>  <tt class="py-line"> </tt>
<a name="L438"></a><tt class="py-lineno">438</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt id="link-211" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-211', 'i', 'link-24');">i</a></tt> </tt>
</div><a name="L439"></a><tt class="py-lineno">439</tt>  <tt class="py-line"> </tt>
<a name="L440"></a><tt class="py-lineno">440</tt>  <tt class="py-line"><tt class="py-comment">####################### class/method/field export ########################</tt> </tt>
<a name="ExportVMToPython"></a><div id="ExportVMToPython-def"><a name="L441"></a><tt class="py-lineno">441</tt> <a class="py-toggle" href="#" id="ExportVMToPython-toggle" onclick="return toggle('ExportVMToPython');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="bytecode-module.html#ExportVMToPython">ExportVMToPython</a><tt class="py-op">(</tt><tt class="py-param">vm</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
</div><div id="ExportVMToPython-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="ExportVMToPython-expanded"><a name="L442"></a><tt class="py-lineno">442</tt>  <tt class="py-line">    <tt class="py-keyword">for</tt> <tt class="py-name">_class</tt> <tt class="py-keyword">in</tt> <tt class="py-name">vm</tt><tt class="py-op">.</tt><tt id="link-212" class="py-name" targets="Method dvm.DalvikVMFormat.get_classes()=dvm.DalvikVMFormat-class.html#get_classes,Method jvm.InnerClassesAttribute.get_classes()=jvm.InnerClassesAttribute-class.html#get_classes,Method jvm.JAR.get_classes()=jvm.JAR-class.html#get_classes,Method jvm.JVMFormat.get_classes()=jvm.JVMFormat-class.html#get_classes"><a title="dvm.DalvikVMFormat.get_classes
jvm.InnerClassesAttribute.get_classes
jvm.JAR.get_classes
jvm.JVMFormat.get_classes" class="py-name" href="#" onclick="return doclink('link-212', 'get_classes', 'link-212');">get_classes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
<a name="L443"></a><tt class="py-lineno">443</tt>  <tt class="py-line">        <tt class="py-comment">### Class</tt> </tt>
<a name="L444"></a><tt class="py-lineno">444</tt>  <tt class="py-line">        <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-string">"CLASS_"</tt> <tt class="py-op">+</tt> <tt id="link-213" class="py-name" targets="Function bytecode.FormatClassToPython()=bytecode-module.html#FormatClassToPython"><a title="bytecode.FormatClassToPython" class="py-name" href="#" onclick="return doclink('link-213', 'FormatClassToPython', 'link-213');">FormatClassToPython</a></tt><tt class="py-op">(</tt> <tt class="py-name">_class</tt><tt class="py-op">.</tt><tt id="link-214" class="py-name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-214', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
<a name="L445"></a><tt class="py-lineno">445</tt>  <tt class="py-line">        <tt class="py-name">setattr</tt><tt class="py-op">(</tt> <tt class="py-name">vm</tt><tt class="py-op">,</tt> <tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">_class</tt> <tt class="py-op">)</tt> </tt>
<a name="L446"></a><tt class="py-lineno">446</tt>  <tt class="py-line"> </tt>
<a name="L447"></a><tt class="py-lineno">447</tt>  <tt class="py-line">        <tt class="py-comment">### Methods</tt> </tt>
<a name="L448"></a><tt class="py-lineno">448</tt>  <tt class="py-line">        <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
<a name="L449"></a><tt class="py-lineno">449</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt class="py-name">method</tt> <tt class="py-keyword">in</tt> <tt class="py-name">_class</tt><tt class="py-op">.</tt><tt id="link-215" class="py-name" targets="Method analysis.BreakBlock.get_methods()=analysis.BreakBlock-class.html#get_methods,Method analysis.TaintedPackage.get_methods()=analysis.TaintedPackage-class.html#get_methods,Method analysis.VMAnalysis.get_methods()=analysis.VMAnalysis-class.html#get_methods,Method dvm.ClassDataItem.get_methods()=dvm.ClassDataItem-class.html#get_methods,Method dvm.ClassItem.get_methods()=dvm.ClassItem-class.html#get_methods,Method dvm.DalvikVMFormat.get_methods()=dvm.DalvikVMFormat-class.html#get_methods,Method jvm.JVMFormat.get_methods()=jvm.JVMFormat-class.html#get_methods"><a title="analysis.BreakBlock.get_methods
analysis.TaintedPackage.get_methods
analysis.VMAnalysis.get_methods
dvm.ClassDataItem.get_methods
dvm.ClassItem.get_methods
dvm.DalvikVMFormat.get_methods
jvm.JVMFormat.get_methods" class="py-name" href="#" onclick="return doclink('link-215', 'get_methods', 'link-215');">get_methods</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
<a name="L450"></a><tt class="py-lineno">450</tt>  <tt class="py-line">            <tt class="py-keyword">if</tt> <tt class="py-name">method</tt><tt class="py-op">.</tt><tt id="link-216" class="py-name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-216', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">m</tt> <tt class="py-op">:</tt> </tt>
<a name="L451"></a><tt class="py-lineno">451</tt>  <tt class="py-line">                <tt class="py-name">m</tt><tt class="py-op">[</tt> <tt class="py-name">method</tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-217', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
<a name="L452"></a><tt class="py-lineno">452</tt>  <tt class="py-line">            <tt class="py-name">m</tt><tt class="py-op">[</tt> <tt class="py-name">method</tt><tt class="py-op">.</tt><tt id="link-218" class="py-name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-218', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">method</tt> <tt class="py-op">)</tt> </tt>
<a name="L453"></a><tt class="py-lineno">453</tt>  <tt class="py-line"> </tt>
<a name="L454"></a><tt class="py-lineno">454</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt id="link-219" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-219', 'i', 'link-24');">i</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">m</tt> <tt class="py-op">:</tt> </tt>
<a name="L455"></a><tt class="py-lineno">455</tt>  <tt class="py-line">            <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">[</tt><tt id="link-220" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-220', 'i', 'link-24');">i</a></tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
<a name="L456"></a><tt class="py-lineno">456</tt>  <tt class="py-line">                <tt class="py-name">j</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">[</tt><tt id="link-221" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-221', 'i', 'link-24');">i</a></tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
<a name="L457"></a><tt class="py-lineno">457</tt>  <tt class="py-line">                <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-string">"METHOD_"</tt> <tt class="py-op">+</tt> <tt id="link-222" class="py-name" targets="Function bytecode.FormatNameToPython()=bytecode-module.html#FormatNameToPython"><a title="bytecode.FormatNameToPython" class="py-name" href="#" onclick="return doclink('link-222', 'FormatNameToPython', 'link-222');">FormatNameToPython</a></tt><tt class="py-op">(</tt> <tt class="py-name">j</tt><tt class="py-op">.</tt><tt id="link-223" class="py-name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-223', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
<a name="L458"></a><tt class="py-lineno">458</tt>  <tt class="py-line">                <tt class="py-name">setattr</tt><tt class="py-op">(</tt> <tt class="py-name">_class</tt><tt class="py-op">,</tt> <tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">j</tt> <tt class="py-op">)</tt> </tt>
<a name="L459"></a><tt class="py-lineno">459</tt>  <tt class="py-line">            <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
<a name="L460"></a><tt class="py-lineno">460</tt>  <tt class="py-line">                <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">m</tt><tt class="py-op">[</tt><tt id="link-224" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-224', 'i', 'link-24');">i</a></tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt>
<a name="L461"></a><tt class="py-lineno">461</tt>  <tt class="py-line">                    <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-string">"METHOD_"</tt> <tt class="py-op">+</tt> <tt id="link-225" class="py-name"><a title="bytecode.FormatNameToPython" class="py-name" href="#" onclick="return doclink('link-225', 'FormatNameToPython', 'link-222');">FormatNameToPython</a></tt><tt class="py-op">(</tt> <tt class="py-name">j</tt><tt class="py-op">.</tt><tt id="link-226" class="py-name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-226', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt id="link-227" class="py-name" targets="Function bytecode.FormatDescriptorToPython()=bytecode-module.html#FormatDescriptorToPython"><a title="bytecode.FormatDescriptorToPython" class="py-name" href="#" onclick="return doclink('link-227', 'FormatDescriptorToPython', 'link-227');">FormatDescriptorToPython</a></tt><tt class="py-op">(</tt> <tt class="py-name">j</tt><tt class="py-op">.</tt><tt id="link-228" class="py-name" targets="Method analysis.ExternalFM.get_descriptor()=analysis.ExternalFM-class.html#get_descriptor,Method analysis.PathP.get_descriptor()=analysis.PathP-class.html#get_descriptor,Method dvm.EncodedField.get_descriptor()=dvm.EncodedField-class.html#get_descriptor,Method dvm.EncodedMethod.get_descriptor()=dvm.EncodedMethod-class.html#get_descriptor,Method dvm.FieldItem.get_descriptor()=dvm.FieldItem-class.html#get_descriptor,Method jvm.FieldInfo.get_descriptor()=jvm.FieldInfo-class.html#get_descriptor,Method jvm.MethodInfo.get_descriptor()=jvm.MethodInfo-class.html#get_descriptor"><a title="analysis.ExternalFM.get_descriptor
analysis.PathP.get_descriptor
dvm.EncodedField.get_descriptor
dvm.EncodedMethod.get_descriptor
dvm.FieldItem.get_descriptor
jvm.FieldInfo.get_descriptor
jvm.MethodInfo.get_descriptor" class="py-name" href="#" onclick="return doclink('link-228', 'get_descriptor', 'link-228');">get_descriptor</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
<a name="L462"></a><tt class="py-lineno">462</tt>  <tt class="py-line">                    <tt class="py-name">setattr</tt><tt class="py-op">(</tt> <tt class="py-name">_class</tt><tt class="py-op">,</tt> <tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">j</tt> <tt class="py-op">)</tt> </tt>
<a name="L463"></a><tt class="py-lineno">463</tt>  <tt class="py-line"> </tt>
<a name="L464"></a><tt class="py-lineno">464</tt>  <tt class="py-line">        <tt class="py-comment">### Fields</tt> </tt>
<a name="L465"></a><tt class="py-lineno">465</tt>  <tt class="py-line">        <tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
<a name="L466"></a><tt class="py-lineno">466</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt class="py-name">field</tt> <tt class="py-keyword">in</tt> <tt class="py-name">_class</tt><tt class="py-op">.</tt><tt id="link-229" class="py-name" targets="Method analysis.BreakBlock.get_fields()=analysis.BreakBlock-class.html#get_fields,Method analysis.TaintedVariables.get_fields()=analysis.TaintedVariables-class.html#get_fields,Method dvm.ClassDataItem.get_fields()=dvm.ClassDataItem-class.html#get_fields,Method dvm.ClassItem.get_fields()=dvm.ClassItem-class.html#get_fields,Method dvm.DalvikVMFormat.get_fields()=dvm.DalvikVMFormat-class.html#get_fields,Method jvm.JVMFormat.get_fields()=jvm.JVMFormat-class.html#get_fields"><a title="analysis.BreakBlock.get_fields
analysis.TaintedVariables.get_fields
dvm.ClassDataItem.get_fields
dvm.ClassItem.get_fields
dvm.DalvikVMFormat.get_fields
jvm.JVMFormat.get_fields" class="py-name" href="#" onclick="return doclink('link-229', 'get_fields', 'link-229');">get_fields</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">:</tt> </tt>
<a name="L467"></a><tt class="py-lineno">467</tt>  <tt class="py-line">            <tt class="py-keyword">if</tt> <tt class="py-name">field</tt><tt class="py-op">.</tt><tt id="link-230" class="py-name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-230', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">f</tt> <tt class="py-op">:</tt> </tt>
<a name="L468"></a><tt class="py-lineno">468</tt>  <tt class="py-line">                <tt class="py-name">f</tt><tt class="py-op">[</tt> <tt class="py-name">field</tt><tt class="py-op">.</tt><tt id="link-231" class="py-name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-231', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
<a name="L469"></a><tt class="py-lineno">469</tt>  <tt class="py-line">            <tt class="py-name">f</tt><tt class="py-op">[</tt> <tt class="py-name">field</tt><tt class="py-op">.</tt><tt id="link-232" class="py-name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-232', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt> <tt class="py-name">field</tt> <tt class="py-op">)</tt> </tt>
<a name="L470"></a><tt class="py-lineno">470</tt>  <tt class="py-line"> </tt>
<a name="L471"></a><tt class="py-lineno">471</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt id="link-233" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-233', 'i', 'link-24');">i</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">f</tt> <tt class="py-op">:</tt> </tt>
<a name="L472"></a><tt class="py-lineno">472</tt>  <tt class="py-line">            <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">f</tt><tt class="py-op">[</tt><tt id="link-234" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-234', 'i', 'link-24');">i</a></tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt> <tt class="py-op">:</tt> </tt>
<a name="L473"></a><tt class="py-lineno">473</tt>  <tt class="py-line">                <tt class="py-name">j</tt> <tt class="py-op">=</tt> <tt class="py-name">f</tt><tt class="py-op">[</tt><tt id="link-235" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-235', 'i', 'link-24');">i</a></tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
<a name="L474"></a><tt class="py-lineno">474</tt>  <tt class="py-line">                <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-string">"FIELD_"</tt> <tt class="py-op">+</tt> <tt id="link-236" class="py-name"><a title="bytecode.FormatNameToPython" class="py-name" href="#" onclick="return doclink('link-236', 'FormatNameToPython', 'link-222');">FormatNameToPython</a></tt><tt class="py-op">(</tt> <tt class="py-name">j</tt><tt class="py-op">.</tt><tt id="link-237" class="py-name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-237', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
<a name="L475"></a><tt class="py-lineno">475</tt>  <tt class="py-line">                <tt class="py-name">setattr</tt><tt class="py-op">(</tt> <tt class="py-name">_class</tt><tt class="py-op">,</tt> <tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">j</tt> <tt class="py-op">)</tt> </tt>
<a name="L476"></a><tt class="py-lineno">476</tt>  <tt class="py-line">            <tt class="py-keyword">else</tt> <tt class="py-op">:</tt> </tt>
<a name="L477"></a><tt class="py-lineno">477</tt>  <tt class="py-line">                <tt class="py-keyword">for</tt> <tt class="py-name">j</tt> <tt class="py-keyword">in</tt> <tt class="py-name">f</tt><tt class="py-op">[</tt><tt id="link-238" class="py-name"><a title="analysis.i
jvm.i" class="py-name" href="#" onclick="return doclink('link-238', 'i', 'link-24');">i</a></tt><tt class="py-op">]</tt> <tt class="py-op">:</tt> </tt>
<a name="L478"></a><tt class="py-lineno">478</tt>  <tt class="py-line">                    <tt class="py-name">name</tt> <tt class="py-op">=</tt> <tt class="py-string">"FIELD_"</tt> <tt class="py-op">+</tt> <tt id="link-239" class="py-name"><a title="bytecode.FormatNameToPython" class="py-name" href="#" onclick="return doclink('link-239', 'FormatNameToPython', 'link-222');">FormatNameToPython</a></tt><tt class="py-op">(</tt> <tt class="py-name">j</tt><tt class="py-op">.</tt><tt id="link-240" class="py-name"><a title="analysis.DVMBasicBlock.get_name
analysis.ExternalFM.get_name
analysis.ExternalMethod.get_name
analysis.JVMBasicBlock.get_name
analysis.PathP.get_name
analysis.TaintedPackage.get_name
dvm.ClassItem.get_name
dvm.DBC.get_name
dvm.DBCSpe.get_name
dvm.EncodedField.get_name
dvm.EncodedMethod.get_name
dvm.FieldItem.get_name
dvm.FillArrayData.get_name
dvm.MethodItem.get_name
dvm.PackedSwitch.get_name
dvm.SparseSwitch.get_name
jvm.AttributeInfo.get_name
jvm.CpInfo.get_name
jvm.EmptyConstant.get_name
jvm.FieldInfo.get_name
jvm.JBC.get_name
jvm.JVMFormat.get_name
jvm.MethodInfo.get_name" class="py-name" href="#" onclick="return doclink('link-240', 'get_name', 'link-145');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt id="link-241" class="py-name"><a title="bytecode.FormatDescriptorToPython" class="py-name" href="#" onclick="return doclink('link-241', 'FormatDescriptorToPython', 'link-227');">FormatDescriptorToPython</a></tt><tt class="py-op">(</tt> <tt class="py-name">j</tt><tt class="py-op">.</tt><tt id="link-242" class="py-name"><a title="analysis.ExternalFM.get_descriptor
analysis.PathP.get_descriptor
dvm.EncodedField.get_descriptor
dvm.EncodedMethod.get_descriptor
dvm.FieldItem.get_descriptor
jvm.FieldInfo.get_descriptor
jvm.MethodInfo.get_descriptor" class="py-name" href="#" onclick="return doclink('link-242', 'get_descriptor', 'link-228');">get_descriptor</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">)</tt> </tt>
<a name="L479"></a><tt class="py-lineno">479</tt>  <tt class="py-line">                    <tt class="py-name">setattr</tt><tt class="py-op">(</tt> <tt class="py-name">_class</tt><tt class="py-op">,</tt> <tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">j</tt> <tt class="py-op">)</tt> </tt>
</div><a name="L480"></a><tt class="py-lineno">480</tt>  <tt class="py-line"> </tt><script type="text/javascript">
<!--
expandto(location.href);
// -->
</script>
</pre>
<br />
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
       bgcolor="#a0c0ff" cellspacing="0">
  <tr valign="middle">

  <!-- Tree link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Index link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Help link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Project homepage -->
      <th class="navbar" align="right" width="100%">
        <table border="0" cellpadding="0" cellspacing="0">
          <tr><th class="navbar" align="center"
            ><a class="navbar" target="_top" href="http://code.google.com/p/androguard/">Androguard</a></th>
          </tr></table></th>
  </tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
  <tr>
    <td align="left" class="footer">
    Generated by Epydoc 3.0.1 on Wed May 18 15:57:06 2011
    </td>
    <td align="right" class="footer">
      <a target="mainFrame" href="http://epydoc.sourceforge.net"
        >http://epydoc.sourceforge.net</a>
    </td>
  </tr>
</table>

<script type="text/javascript">
  <!--
  // Private objects are initially displayed (because if
  // javascript is turned off then we want them to be
  // visible); but by default, we want to hide them.  So hide
  // them unless we have a cookie that says to show them.
  checkCookie();
  // -->
</script>
</body>
</html>
